博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
redis主从复制
阅读量:6206 次
发布时间:2019-06-21

本文共 1030 字,大约阅读时间需要 3 分钟。

hot3.png

主从复制的配置

两种配置方式: 

1、slaveof命令

举例:

153243_Z1Nz_3371837.png

这条命令是:让6382这个节点从本机6379这个节点进行复制,(即6379为master,6382为slave) 返回结果OK ,这里返回结果是异步的,也就是说执行完命令会立刻返回,实际上后台还有很多的操作。

取消复制:

153728_Zs3u_3371837.png

这条命令代表6382不再成为任何节点的从节点

这里有两个注意点:

1、之前从master复制过来的数据并不会丢失,只是不再同步之前master(如上图的6379节点)后续写入的数据

2、这条命令也可以用来改变其所属的master节点,即重新成为另一台master的slave,但是新的master首先就会把从节点的数据全部清除掉。(全量复制)

2、修改配置文件

slaveof ip port --- 成为某个主节点的从节点,这里ip和port是所指向的master节点

slave-read-only  yes --- 当前从节点只做读的操作,不允许写

下面是我在同一机器上的一个演示:在master节点(6379)上执行 info replication命令可以看到这个节点的相关信息

160342_aCuk_3371837.png

接着我们启动从节点,并执行下info replication命令,可以看到从节点相关信息

160651_nvbF_3371837.png

161037_pmnG_3371837.png

主节点再执行info replication命令,可以看到当前master的从节点个数以及从节点信息

160844_y4Y5_3371837.png

接下来,我们可以看到在主节点上增加的数据,以及同步到了从节点

161308_qO0E_3371837.png

接着我们尝试在从节点上写入数据,会得到一个错误,不能在从节点上进行写操作

162012_D6Ab_3371837.png

runId和复制偏移量

什么是runId?runId是redis在每次启动的时候,都会有一个随机的ID,来唯一标识这个节点,当redis关闭runId消失,重启又会产生一个新的runId

可以用 redis 的 info 命令来查看当前runId:

163157_kfR1_3371837.png

什么是偏移量? 偏移量是当redis每次写入数据时,偏移量都会增加,这个是只从复制时,用来对比主从同步的状态,如果当master 的偏移量远高于slave的偏移量时,就是master写了很多数据,而slave没有同步,这就证明我们主从同步有问题。

可以用info replication查看当前master节点和slave节点的偏移量

164201_nyDT_3371837.png

上图可以看到 我们的主从两个节点的偏移量是相等的,代表数据同步没有问题。

转载于:https://my.oschina.net/u/3371837/blog/1787601

你可能感兴趣的文章
redis 持久化
查看>>
几种去除数组中重复元素的方法、数组去重
查看>>
C语言递归实现二叉树(二叉链表)的三种遍历和销毁操作(实验)
查看>>
C#的特性Attribute
查看>>
Java 编程下 Eclipse 如何设置单行代码显示的最大宽度
查看>>
【BZOJ1001】[BeiJing2006]狼抓兔子
查看>>
我的程序员之路(一) 分类: 程序人生 201...
查看>>
HTTP Methods: GET v.s POST
查看>>
onmousemove和onmouseout事件的调用,和js使用双引号、单引号的时候应该注意的问题...
查看>>
COM组件的运行机制
查看>>
sql server 2008 身份验证失败 18456
查看>>
广义表
查看>>
支持向量机SVM算法原理及应用(R)
查看>>
python 3 面向过程编程
查看>>
iPhone手机屏幕尺寸(分辨率)
查看>>
笔试题③
查看>>
css 属性选择器笔记
查看>>
PHP工厂模式计算面积与周长
查看>>
Flask学习 一 基本结构
查看>>
sqlserver2005仅当使用了列的列表,并且 IDENTITY_INSERT 为 ON 时,才能在表 'SendMealAddress'中为标识列指定显式值。...
查看>>