Redis主从复制
Redis主从复制
配置Redis主从复制的过程相对简单,主要涉及在从节点上指向主节点并启动复制功能。下面是基本步骤:
手动配置主从复制:
对于从节点配置:
-
修改配置文件(非必须,也可以使用命令行动态配置):
在从节点的redis.conf配置文件中找到slaveof行(注释掉的则取消注释),将其设置为你的主节点IP地址和端口,例如:slaveof master_host master_port -
动态配置(无需重启Redis):
如果你不想编辑配置文件,可以直接在从节点的Redis客户端使用命令:redis-cli -p [从节点端口] > SLAVEOF master_host master_port -
安全选项(可选):
可以设置从节点只读(默认从节点已经是只读的)以防止误操作写入,确保数据一致性。在配置文件或命令行中添加:replica-read-only yes -
验证主密钥(如果启用):
如果主节点启用了“requirepass”密码认证,从节点也需要知道这个密码才能连接。在从节点上设置相同的密码,或者使用REPLCONF AUTH password命令。
对于主节点配置:
- 主节点不需要特殊配置来接受从节点的复制请求,除非设置了特定的安全限制如密码验证、ACL规则等。
启动Redis实例:
确保所有节点(包括主节点和从节点)都已按照各自配置启动Redis服务。
注意事项:
- 确保主节点有持久化配置(如RDB或AOF),否则在主节点重启后,从节点无法完成全量复制。
- 确保主从之间的网络连接通畅。
- 若有防火墙,请确保相应的端口开放以便主从节点间的通信。
高级配置(如哨兵模式):
对于更高级别的高可用性,可以使用Redis Sentinel来监控主从状态并自动进行故障转移。在这种情况下,不再需要手动配置主从关系,而是由Sentinel负责管理。
示例:
假设主节点IP为192.168.1.1,端口为6379,则在从节点上配置主从复制的命令行示例为:
redis-cli -p [从节点端口]
> SLAVEOF 192.168.1.1 6379
如果主节点启用了密码保护,还需要授权:
> REPLCONF AUTH your_master_password

浙公网安备 33010602011771号