首页 > 其他 > 详细

Redis的复制(Master/Slave)、主从复制、读写分离

时间:2019-08-01 09:37:47      阅读:81      评论:0      收藏:0      [点我收藏+]

1、什么是Redis的复制

  行话:也就是我们所说的主从复制,主数据更新后根据配置和策略自动同步到备用机的master/slave机制,Mater以写为主,slave以读为主。

2、能干什么

  2.1、读写分离

  2.2、容灾恢复

3、怎么用

  3.1、配从(库)不配主(库)

  3.2、从库配置:slave     主库IP     主库端口

  3.3、修改配置文件细节操作

  3.4常用三招

    3.4.1、一主二仆

      1、init

      2、一个Master两个Slave

      3、日志查看

      4、主从问题演示

    3.4.2、薪火相传

      上一个slaver可以是下一个slaver的Master,Slaver同样可以接收其他Slaver的链接和同步请求,那么该Slaver作为同一个链上的下一个Slaver的master,可以减轻Master的写压力。

  注意:中途转向会清除之前的数据,重新建立拷贝最新的

    中间的从机,总体上来说还是从机

    3.4.3、反客为主

4、实现过程

一主二仆:

  1、创建三个主机、每个都初始化

127.0.0.1:6381> info replication
# Replication
role:master
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
127.0.0.1:6381> 

  2、主机6379设值

127.0.0.1:6380> set k1 v1
OK
127.0.0.1:6380> set k2 v2
OK
127.0.0.1:6380> set k3 v3
OK

  3、从机备份

127.0.0.1:6379> slaveof 127.0.0.1 6379
OK

  4、直接获取值(后面插入的也可以直接获取)

127.0.0.1:6380> get k1
"v1"

 薪火相传:

  主机

127.0.0.1:6379> set k9 v9
OK

  从机

127.0.0.1:6380> get k9
"v9"

  从机的从机

127.0.0.1:6380> get k9
"v9"

反客为主:

  1、让主机死掉

  2、从机变为主机

127.0.0.1:6380> slaveof no one
OK
127.0.0.1:6380> info replication
# Replication
role:master
connected_slaves:0
master_repl_offset:907
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:906
127.0.0.1:6380> 
127.0.0.1:6380> keys *
1) "k1"
2) "k9"
127.0.0.1:6380> set k10 v10
OK

  3、从机转换原来的主机

127.0.0.1:6381> SLAVEOF 127.0.0.1 6380
OK
127.0.0.1:6381> get k10
"v10"

 

注意:注意死了,从机还是从机,从机原地待命。从机死了,从机活过来,他就是主机了,需要重新建立关系。除非你在配置进redis.conf文件

Redis的复制(Master/Slave)、主从复制、读写分离

原文:https://www.cnblogs.com/karrya/p/11279903.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!