Linux下,Redis(三)主从配置

配置Redis主从,我也是从官网看文档来的,本篇只是把自己配置过程记录,官网地址如下: https://redis.io/topics/replication

并且分享给各位,废话不多说,直接配置吧

--------------------------------分割线-----------------------------------------

上篇,介绍了,Redis单机多实例的启动,我们就以上篇为基础吧,来介绍配置主从吧

  1. 我们准备两个实例,一个默认端口 6379作为主,一个6380作为从,默认从应用是没有写的权限的,这需要注意下
  2. 我们把Redis日志打印放开,并且写入文件,这样我们能直观的看到从应用跟主应用关联

下面,正式开始配置吧,配置主从有2种,第一种配置

  1. 我们同时编辑redis.conf跟redis_6380.conf文件,放开日志,日志文件为 redis_端口号.log
  2. 我们先启动 主应用(也就是默认端口是6379的应用)
  3. 然后,我们启动从应用(也就是端口为6380的应用)
  4. 两个应用都起来后,我们现在有两种方式,让 6380成为6379的从应用,我们先介绍第一种,我们从redis-cli 进入redis命令界面,然后输入 slaveof 127.0.0.1 6379,表示,将本机作为6379的从应用
  5. 然后,我们查看下,6379的日志文件

        

        会看到如下,从应用的ID,以及主从关联成功的日志,主从同步成功的日志

        这样,我们就配置好主从了,但是这有个缺陷,那就是.一旦从应用重启了,那么起来后,也不会跟主应用自            动去关联上,所以,这不是我们想要的,这时候,我们第二种配置主从就来了

     

第二种配置,通过修改配置文件指定主应用,这样,从应用,只要启动,就会主动跟主应用关联,并且同步主应用的数据

  1.  我们来修改redis_6380.conf的配置文件,指定从应用跟哪个主关联,增加以下配置,然后保存退出
  2. 我们重启下6380,顺便看下 6379的日志,发现关联上了
  3. 我们来试试,往主Redis写数据,从Redis会不会同步成功
  4. 这样,表示我们同步完成了,从Redis默认是不能删除数据的,如果要可以删除,可以将配置文件的 slave-read-only配置为 no

       

后话:

虽然配置了主从,但是没有配置主应用挂了后,从服务自动切换为主应用并没有配置,

我们也还没有配置数据持久化,如果不是优雅停机,而是类似杀进程之类的操作,可能会导致,主应用进程被杀,数据丢失,然后启动主应用,没有数据恢复,从应用同步主应用,导致从应用的数据丢失

手动切换主从,实际应用中是不会允许,所以我们不在介绍手动切换主从

所以,下篇我们分别介绍 Redis(四)Redis数据持久化 Redis(五)Redis主从自动切换

到这,文章就结束了!

以上,均为本人测试而得出的结果,可能会有出入,或者错误,欢迎指正

欢迎转载,请注明出处跟作者,谢谢!

猜你喜欢

转载自my.oschina.net/u/2278977/blog/1819149