主从架构图
image主从复制的两种方式
起两个redis容器
docker run -itd --name redis-server centos
docker run -itd --name redis-slave centos
#两个容器分别执行
yum install redis
yum install epel-release
yum install supervisor
方式一:命令模式
redis-server 开启redis服务
redis-cli 进入redis(另起终端)
进入redis-cli后输入以下命令
slaveof 主服务器的IP 端口号
#slaveof 命令是异步的,不阻塞。
#并且此时,从服务器现有的数据会先被清空,之后再同步主服务器的数据
停止从服务器的复制:
slaveof no one
#执行该命令之后从服务器不再复制主服务器,但是之前复制的还会存在
方式二:配置文件方法
vi /etc/redis.conf 加入以下命令行
slaveof 主服务器的IP 端口号
// 配置此服务器只提供读取操作
slave-read-only yes
- 使用该方法必须重启redis服务
- 停止服务时也必须先注释上面的语句,然后重启redis服务
查看主从复制的信息
127.0.0.1:6379> info replication
# Replication
role:slave
master_host:172.17.0.2
master_port:6379
master_link_status:up
master_last_io_seconds_ago:8
master_sync_in_progress:0
slave_repl_offset:11502
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
主从复制成功
网友评论