redis 高级应用-主从复制
一、为什么需要主从复制
二、主从复制的特点和过程
三、配置主从复制
四、验证主从复制是否生效
五、如何查看谁主谁从以及常见问题
一、为什么需要主从复制
虽然redis运行于内存,处理速度快。但是,仍不可避免出现一些异常,像服务器宕机等等情况,为了提高应用的可用性。需要对redis进行主从复制:
1、分担访问压力
2、由于主从拥有相同的数据库副本,从而可以进行冗余,在主服务器出现异常时,从服务器可以及时替换,确保正常使用
二、主从复制的特点和过程
1、特点:
a、Master可以拥有多个slave
b、多个slave可以连接同一个master外,还可以连接到其它的slave
c、主从复制不会阻塞master,在同步数据时,master仍可以继续处理client请求
2、过程:
a、slave与master建立连接,发送sync同步命令
b、master会启动一个后台进程,将数据库快照保存到文件中,同时master主进程会开始收集新的写命令并缓存
c、后台完成保存后,就将此文件发送给slave
d、slave将此文件保存到硬盘上
三、配置主从复制
前提: 由于测试环境是同一台机器,因此redis主服务运行在6379端口,从服务运行在6378端口
1、打开主服务配置文件,并设置登录密码xiaobei
2、保存后,重启redis
3、打开从服务配置文件,设置主服务的相关信息
(备注: 指定主服务的ip以及端口,还有登录密码)
4、保存后,重启从服务redis
四、验证主从复制是否生效
1、观察主从服务的网络传输
(备注:从从服务6378的截图可以看出,主从复制的网络传输已经成功)
2、数据一致性验证
2.1、主与从的刚开始数据都为空
2.2、在主服务中设置key为name,value为xiaobei的字符串
(备注: 从上面可以看到,主从复制配置已经成功)
五、如何查看谁主谁从以及常见问题
1、有时候,当设备多,而且又没有标示的情况下,是无法标示谁是主,谁是从,这时可以使用info命令
如果是主,则会看到如下图
相反,则会看到
2、常见问题
2.1、一旦被设置为从服务,则只能是只读模式
(备注: 修改刚复制过来的name,修改时,出现错误提示)
版权声明:本文为博主原创文章,未经博主允许不得转载。