Redis 5 以前的版本,请使用 slaveof
;5 版本以后请使用新命令 replicaof
;未来的版本可能会废弃 slaveof
。
方式一:slaveof/replicaof 命令
该方式,即时生效
配置主从
slave 0.0.0.0 6379
REPLICAOF 0.0.0.0 6379
在从节点执行命令,输入 master
节点的 host
、port
即可
说明:
- 当从节点已有数据时,执行命令后,从节点数据会清除,并按 master 节点数据进行复制。
- 当开启主从关系后,从节点无法写入数据(默认配置)
取消主从
SLAVEOF no one # redis < 5.0
REPLICAOF no one # redis >= 5.0
在从节点执行命令执行以上命令即可。
说明:执行后,从节点数据不会删除,仅会解除主从关系
方式二:配置文件
# redis < 5.0
slaveof 0.0.0.0 6380
slaveof-read-only yes # 从机只读
# redis >= 5.0
replicaof 0.0.0.0 6380
replica-read-only yes # 从机只读
在 redis.conf
中配置。永久生效,但需重启。
优缺点
方式 | 命令 | 配置文件 |
---|---|---|
优点 | 即时生效 | 永久配置,统一管理 |
缺点 | 重启后失效,不便于管理 | 需要重启才可生效 |
参考文档
- replicaof:https://redis.io/commands/replicaof
- slaveof:https://redis.io/commands/slaveof/