`

Redis高级使用特性之主从复制的相关设置

阅读更多

Redis服务器的主从复制

 本文章会简单介绍redis中的主从复制。

 

下面切入正题咯:

 

 主从复制的一些总结(自用总结 不喜勿喷):

 

通过主从复制允许多个slave server拥有和master server相同的数据副本或称为其映像

相当于从服务器可以把主服务器数据库复制

主从复制特点

1.master可以拥有多个slave服务器

master:slave = 1:N

2.多个slave除了连接到同一个master以外,还可以连接到其他的slave,也就是说他们之间也是可以相连的。此外slave可连接到另外一个没有连接到他们master的slave服务器(记作slaveTMP)。为了防止服务停止即出现master服务器宕机,原有的master服务器不可访问,这时slaveTMP服务器会自动替代原有的master成为其他slave的新master,以保证服务的正常进行。

 3.主从复制不会阻塞master,在同步数据时,master会继续处理他们的请求。即主服务器在响应从服务器的请求时,不会影响自身写入服务器操作。

4.提高系统的伸缩性

 

主从复制过程详解:

slave服务器向主机master请求同步命令时,此时master主机会后台开启一个新的后台进程,将当前数据库中的数据快照备份到一个文件中,在此同时 如果有写命令发送给master主机,这个写命令并不会受到影响,master主进程会开始收集新的命令并缓存。两个进程会同时进行。并将此写内容也写入文件中,当写文件执行完毕后,主服务器master会将此文件发送给从服务器。slave服务器接收到此文件并写入slave服务器的硬盘中。当slave服务器再次启动时会加载此文件,并将此文件中的数据映射到slave的数据库中。

 

主从复制配置详解:

配置slave从服务器,将从服务器slave的配置文件(./etc/redis.conf)加入以下配置:

配置文件中形式为:slaveof <masterip> <materport>

[masterauth <master-password> 可选]

 实例如:

slaveof 192.168.1.1 6379 #指定master的IP地址以及端口

[

 masterauth #主服务器的密码

 (如果有,没有可不写此配置)

 ]

redis中输入info命令可查看当前服务器角色(分别主从)

在显示的服务器详细信息中

从服务器输入info后可查看role,master_link_status选项

role:会显示本机的角色 eg.从服务器为role:slave

master_link_status:当前服务器连接主机状态 e.g.从服务器为master_link_status:up

主服务器可查看role,

role:会显示本机的角色 eg.主服务器为role:master

slave*:会显示连接的从属服务器的ip地址和端口号以及当前的状态信息,eg.slave0:192.168.1.2,6379,online

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics