今天发现在Redhat as 5上编译2.6.14会报错,所以下面的演示基于2.4.18,报错信息:
[root@as5 src]# uname -a Linux as5.cooly.slum 2.6.18-8.el5xen #1 SMP Fri Jan 26 14:42:21 EST 2007 i686 i686 i386 GNU/Linux [root@as5 src]# make LINK redis-server zmalloc.o: In function `zmalloc_used_memory': /root/redis-2.6.14/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4' collect2: ld 返回 1 make: *** [redis-server] 错误 1 [root@as5 src]#
上一节中redis装在了三个不同的机器上,已经做了主从,也能正常同步,但是没有密码保护,并且使用了默认的端口,下面先说一下本次的主从情况:
master 127.0.0.1 6379 slave1 127.0.0.1 6381 slave2 127.0.0.1 6382
在没有添加密码前:
redis 127.0.0.1:6379> get user:name "zl" redis 127.0.0.1:6381> get user:name "zl" redis 127.0.0.1:6382> get user:name "zl"
可见,已经主从同步。
先给master设置密码,redis提供了在线直接修改配置和修改配置文件两种方法,先使用直接修改,调用命令config set requirepass 密码,设置成功后,再执行info命令,发现返回错误,这是因为配置已经生效,访问需要使用密码,执行命令auth 密码,再次执行info命令,已经成功:
redis 127.0.0.1:6379>config set requirepass #pass123# OK redis 127.0.0.1:6379> info ERR operation not permitted redis 127.0.0.1:6379> auth #pass123# OK redis 127.0.0.1:6379> info redis_version:2.4.18 redis_git_sha1:00000000 redis_git_dirty:0 在master中新增加一个记录: redis 127.0.0.1:6379> set user:age 29 OK redis 127.0.0.1:6379> get user:age "29" redis 127.0.0.1:6379>
下面重启并访问slave1和slave2【未重启时还是同步了,我重启slave1后才不会正常同步,不知道2.6会不会有这个问题,明天说明20130719-经测试发现,2.6.14版本也是同样处理的,即,当master使用config set requirepass修改密码后,修改密码之前连接的客户端在没有重启的情况下,仍然可以访问】:
redis 127.0.0.1:6381> keys * 1) "user:name" slave1中显示已经和master断开: role:slave master_host:127.0.0.1 master_port:6379 master_link_status:down slave2中也没有同步到信息: redis 127.0.0.1:6382> keys * 1) "user:name" 刚才设置的user:age并没有同步,说明设置的密码已经生效了,此时在slave1中输入 config set masterauth #pass123# redis 127.0.0.1:6381> config set masterauth #pass123# OK redis 127.0.0.1:6381> get user:age "29" redis 127.0.0.1:6381> 再访问slave2,也能正常取到值了: redis 127.0.0.1:6382> get user:age "29" redis 127.0.0.1:6382>
至此,已经能访问添加了密码的master,刚才的配置在重启服务后会丢失,如果永久保存,需要修改配置文件对应的参数,如config set requirepass #pass123#只需要找到redis.conf中的requirepass,把注释去掉,并修改值为#pass123#,即可。
相关推荐
在本笔记中,我们将深入探讨Redis的关键特性、安装配置、数据类型、命令操作以及实际应用。 一、Redis概述 Redis起源于意大利,由Salvatore Sanfilippo创建,其全称为Remote Dictionary Server,即远程字典服务。...
- 后台启动:修改配置文件`daemonize yes`,然后执行`./redis-server redis.conf`。 #### 四、Redis客户端 - **自带客户端**:`redis-cli`,用于连接Redis服务器,执行各种命令。 - 默认连接本地的Redis服务(`...
- **基础配置**:修改 `redis.conf` 文件设置端口、内存限制、持久化策略等。 - **数据类型**:使用 String、Hash、List、Set 和 Sorted Set 存储和操作数据。 - **入门使用**:通过命令行交互,进行增删改查操作。 ...
2. **安装与配置**:Redis的安装通常涉及下载源码、编译、配置文件修改(如端口号、密码设置、日志文件路径等)以及启动服务。配置文件`redis.conf`中包含了很多可调整的参数,以优化Redis的性能和安全性。 3. **...
Redis 是一个高性能的键值对数据存储系统,常被用作数据库、...以上就是 Redis 实践笔记中关于主从部署、哨兵系统和集群部署的知识点概述,对于实际运维和开发来说,理解并掌握这些内容是构建高可用 Redis 系统的基础。
【狂神说Redis笔记】是针对 Redis 这一高性能键值数据库的学习资料,主要面向 Java 开发者。Redis 是一个开源的、支持网络的、基于内存的数据存储系统,常用于数据库、缓存和消息中间件等场景。它以其快速、灵活和...
2. 禁用不必要的网络服务:如默认的TCP端口6379,可更改或限制访问。 3. 定期更新:保持Redis版本最新,修复已知的安全漏洞。 通过以上内容,你应该对Redis有了更全面的了解。在实际应用中,还需要结合具体需求进行...
8. **配置Redis**:在SpringBoot的application.properties或yml文件中,可以配置Redis的连接信息,如主机地址、端口、密码等。 9. **RedisTemplate与StringRedisTemplate**:Spring Boot提供了这两个模板类来操作...
`NoSql数据库之Redis笔记.docx`很可能是关于Redis的使用和最佳实践的学习笔记,可能涵盖了Redis的数据类型、命令操作、集群搭建等内容。`redis.conf-中文翻译.txt`则提供了`redis.conf`配置文件的中文解释,有助于...
Redis配置文件`redis.conf`可以定制服务器参数,如端口号、内存限制、持久化策略等。可以通过`redis-cli`命令行工具与Redis交互,或者使用Java等编程语言的客户端库进行连接操作。 2.1 Redis 在Java中的使用 在Java...
安装完成后,需要配置`redis.conf`文件以满足特定的使用需求,例如设置端口、密码保护、持久化策略等。 三、Redis命令 Redis提供了丰富的命令来操作数据结构。例如: - SET/GET用于设置和获取字符串。 - HSET/HGET...
Redis默认是内存存储,但为了防止数据丢失,提供了两种持久化方式:RDB(Snapshotting)和AOF(Append Only File)。RDB是在指定时间间隔生成数据库的快照,而AOF记录每次写操作,以日志形式保存。可以根据实际需求...
本学习笔记将基于提供的压缩包文件,深入探讨Redis的关键特性、工作原理以及常见应用场景。 首先,"深入redis学习(一)--readme and conf.doc"介绍了Redis的安装和配置过程。在配置文件中,我们可以设置服务器的...
Redis 的配置文件 `redis.conf` 可以用来设置端口、日志文件等参数。启动 Redis 服务器可以使用 `redis-server` 命令,并指定配置文件。Redis 提供了一个命令行客户端 `redis-cli` 用于交互式操作。 在实际应用中,...
Redis的配置文件通常是`redis.conf`,可以通过修改此文件来设置服务器的各种参数,如端口号、日志级别、持久化策略等。例如,设置`bind 127.0.0.1`限制只允许本地连接,或者开启`requirepass`设置密码保护。 3. **...
- 启动Redis服务端有三种方式: - 在当前目录下运行`redis-server`。 - 在后台运行`redis-server &`。 - 指定配置文件运行`redis-server redis.conf &`。 - 停止Redis服务有两种常见方式: - 通过`kill`命令...
虽然Redis默认未启用密码认证,但可以通过配置requirepass启用,并使用bind限制连接来源,提高安全性。 通过深入学习以上知识点,你将能够熟练地在项目中运用Redis,提升系统性能,解决各种数据存储和处理问题。...
5. 有序集合类型(Sorted Set):集合的基础上带有分数,可用于排序,如 zsadd 命令添加元素并设定分数。 Redis 还提供了一些高级功能: 1. 设置超时时间:使用 EXPIRE 命令为键设置过期时间。 2. 分布式队列:通过...
1. `port`: 指定Redis服务器监听的端口号,默认为6379。 2. `bind`: 设置Redis服务器允许连接的IP地址,可以是单个地址或0.0.0.0来接受所有网络连接。 3. `daemonize`: 是否以守护进程模式运行Redis。 4. `...