Redis 5.0.9配置主从复制

1、准备工作

  准备两台以上已经安装Redis的服务器,这里以两台安装了Redis5.0.9的Centos 7 为例子

  Redis安装:https://www.cnblogs.com/chenppp/p/13437212.html

  主节点:192.168.199.50

  从节点:192.168.199.51

  Redis 提供了复制功能,将一个主数据库的数据自动同步到从数据库,防止数据丢失。
  同时还可以配置一主多从来分担主压力,主只接受写的操作,将读的操作给从来实现;其中从库也可以接受其它从库的同步请求。
  如果主、从因为网络原因出现连接断开,网络正常后从可以自动连接主,连接成功后主会将完整的数据同步一次给从,保证数据一致性。

  主从复制的原理过程:

    1、从节点启动后,会连接到主节点,从节点发送 Ping 信号,主节点返回 Pong,两边能互相通信,建立连接

    2、建立连接后,从节点向主节点发送Psync信号,主节点接收信号后,全量同步数据给从节点

    3、接下来,主节点就会持续的把写命令发送给从节点,保证主从数据一致性。

2、配置主从

  主节点配置:

bind 192.168.199.50    # 监听地址
timeout 300         # 超时时间
daemonize yes        # 作为守护进程运行
pidfile /usr/local/redis/logs/redis_6379.pid    # 生成pid文件路径,可使用默认路径
logfile "/usr/local/redis/logs/redis.log"      # 生成的日志文件路径
requirepass password        # Redis 认证密码
repl-backlog-size 1mb      # 设置backlog缓冲区大小,在slave端失连时存放要同步到slave的数据,因此当一个slave要重连时,经常是不需要完全同步的,执行局部同步就足够了。backlog设置的越大,slave可以失连的时间就越长
repl-timeout 180      # 快照同步的超时时间,同步时超过这个时间,会被认为同步失败
client-output-buffer-limit slave 256mb 64mb 60    #
如果增量同步的缓存大于256MB,或者超过60s大于64MB,则触发快照同步

  从节点配置

bind 192.168.199.50    # 监听地址
timeout 300         # 超时时间
daemonize yes        # 作为守护进程运行
pidfile /usr/local/redis/logs/redis_6379.pid    # 生成pid文件路径,可使用默认路径
logfile "/usr/local/redis/logs/redis.log"      # 生成的日志文件路径
requirepass password    # redis 认证 replicaof 92.168.199.50 6379    # 主节点ip和端口
masterauth password        # 主节点密码
replica-read-only yes        # 从节点只读

  启动主、从节点

  主节点

 

  从节点

 

 

   登录主节点redis,创建一个key

[root@swarm-node1 bin]# ./redis-cli -h 192.168.199.50 -p 6379
192.168.199.50:6379> AUTH password
OK
192.168.199.50:6379> set id redis
OK
192.168.199.50:6379> get id
"redis"
192.168.199.50:6379> 

  登录从节点,查看数据是否有同步过来

[root@swarm-node2 bin]# ./redis-cli -h 192.168.199.51 -p 6379
192.168.199.51:6379> AUTH password
OK
192.168.199.51:6379> KEYS *
1) "id"
192.168.199.51:6379> GET id
"redis"
192.168.199.51:6379> 
192.168.199.51:6379> 

redis 主从复制配置完成

posted @ 2020-08-05 23:00  cchenppp  阅读(646)  评论(0编辑  收藏  举报
Language: HTML