Redis的主从搭建

君子不器 2017年11月12日 编程世界 1617次阅读 查看评论

 

Redis在作为可内存持久化的Key-Value数据库是使用的过程中是可以做主从服务的。在Redis的大规模集群中Redis的主从服务就是集群实现的基础,在Redis的主从服务中有以下几个优点:

1
2
3
4
5
6
1、master可以有多个slave。
2、除了多个slave连到相同的master外,slave也可以连接其它slave形成图状结构。
3、主从复制不会阻塞master。也就是说当一个或多个slave与master进行初次同步数据时,master 可以继续处理客户端发来的请求。相反slave在初次同步数据时则会阻塞不能处理客户端的请求。
4、主从复制可以用来提高系统的可伸缩性,我们可以用多个slave专门用于客户端的读请求,比如sort操作可以使用slave 来处理。也可以用来做简单的数据冗余。
5、可以在master禁用数据持久化,只需要注释掉master配置文件中的所有save配置,然后只在slave上配置数据持久化。
6、在slave上数据只读,如此保障了数据的一致性

这样在平时就可以灵活的在使用Redis,而配置Redis的主从也十分的简单,只需要在Redis的slave服务器上配置文件redis.conf中修改添加以下配置即可:

1
2
3
4
5
slaveof <masterip> <masterport>
#填上master的IP和端口
masterauth <master-password>
#填上master的密码
#建议在Redis中开启logfile输出

 

在这里正常slave连接上master后,在第一次的时候master就会在后台实时启动一个进程把数据保存在快照中,

再通过sync把快照传送至slave,最后由slave把快照导入slave的Redis库中,而在后续在master上接收的指令都会同步发送一份至slave,

从而实现主从同步,这里需要注意的是在搭建好后如果master有设置口令验证而在slave中没有配置masterauth参数时,

那么在主从连接时就会报错,且在日志中会时时打印如下的日志信息:

1
# MASTER aborted replication with an error: NOAUTH Authentication required.

在master和slave正常搭建连接后在master和slave中都会打印相应的成功日志

 

« 上一篇 下一篇 » 君子不器原创文章,转载请注明出处! 标签:JavaRedis

相关日志:

博主介绍
乌云蔽月,人迹踪绝,说不出如斯寂寞。
控制面板
您好,欢迎到访网站!
  [查看权限]
站点信息
  • 文章总数:1279
  • 页面总数:2
  • 分类总数:9
  • 标签总数:61
  • 评论总数:331
标签列表
友情链接