Redis主从复制

 

配从库 不配主库

从库配置: slaveof 主库IP 主库端口 (每次与master断开之后 , 都需要重新连接 , 除非你配置进redis.conf文件 info replication

修改配置文件细节操作

    拷贝多个redis.conf文件

    开启daemonize yes

    pid文件名字

    指定端口

    log文件名字

    dump.rdb名字

常用3招

    一主二仆

       info replication

       一个Master 两个Slave

       从机 slaveof 127.0.0.1 6379

       当主机关闭时  从机仍然可以读取 当主机再次开启(仍然是两个从机的主机)

    星火相传

       上一个Slave可以是下一个Slave的Master , Slave同样可以接收其他Slaves的连接和同步请求 , 那么该Slave作为链条中下一个的master , 可有效减轻master的写压力

       中途变更转向: 会清除之前的数据 , 重新简历拷贝最新的

       SlaveOf 新主库IP 新主库端口

       当主机挂掉就是去主机 (主机重启 重回主机位置)

    反客为主

       slaveof no one  当主机挂了 从机使用此命令升级为主机

复制原理:

  Slave启动成功连接到master后会发送一个sync命令

  Master接收到命令启动后台的存盘进程 , 同时手机所有接收到的用来修改数据集命令 , 在后台进程执行完毕后, master将传送整个数据文件到slave,以完成一次完全同步

  全量复制: 而slave服务在接收到数据库文件数据后 , 将其存盘加载到内存中

  增量复制: Master继续将新的所有收到的修改命令一次传给slave , 完成同步但是只要是重新连接master , 一次完全同步将被自动执行

哨兵模式:

  能够从后台监控主机是否故障 , 如果故障了根据投票自动将从库转换为主库

  自定义的/myredis目录下新建sentinel.conf文件

  配置哨兵填写内容

      修改为一主两从

      sentinel monitor被监控数据库名字 127.0.0.1 6379 1

      上面最后一个数字1表示主机挂掉后slave投票看让谁接替成为主机 , 得票大约1的成为主机

      配置sentinel.conf

      启动哨兵 redis-sentinel /myredis/sentinel.conf

      当主机挂掉 两个从机开始投票 票数高得升级为主机 (如果之前挂掉得主机重启 就会沦落为从机)

      

 

 

  

  

posted @ 2019-03-13 13:28  dugujiujian  阅读(171)  评论(0编辑  收藏  举报