Redis教程

redis主从复制(读写分离,容灾恢复)

本文主要是介绍redis主从复制(读写分离,容灾恢复),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Redis_主从复制:主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master(主服务器)以写为主,Slave(从服务器)以读为主

作用:读写分离,性能扩展,容灾快速恢复

 

复制原理:

 

 

 

使用

(主要)

拷贝多个redis.conf文件include(写绝对路径)

创建文件夹

mkdir /myredis

cd /myredis

复制一个原始redis.conf

cp /etc/redis.conf /myredis/redis.conf

编写主从机的redis.conf

vi redis6379.conf

 

开启daemonize yes(守护线程 即后台运行)

daemonize yes

设置自己redis的密码

requirepass 123456

给从机设置主机的密码

masterauth 123456

Pid文件名字pidfile(后台运行时写入pid的文件)

pidfile /var/run/redis_6379.pid

指定端口port

port 6379

 

 

(次要)

dump.rdb名字dbfilename

dbfilename dump6379.rdb

Appendonly 关掉或者换名字

 appendfilename appendonly6379.aof

Log文件名字

logfile /tmp/redis6379.log

 

例子:

一主二仆:

 

 

编写1主2从(启用了RDB持久化)

vi /myredis/redis6379.conf

内容

include /myredis/redis.conf

pidfile /var/run/redis_6379.pid

port 6379

requirepass 123456

masterauth 123456

dbfilename dump6379.rdb

接着编译另外2个

 

在myredis文件夹中启动redis服务

redis-server /myredis/redis6379.conf
redis-server /myredis/redis6380.conf
redis-server /myredis/redis6381.conf

进入redis-cli(三个Linux界面分别进入)

redis-cli -p 6379

redis-cli -p 6380

redis-cli -p 6381

 

在从机上执行    配置为从机(127.0.0.1:主机ip   6379:主机端口)(从机挂掉了重启需要重新配置从机         可以将配置增加到redis.conf文件中,永久成为从机生效。)

slaveof 127.0.0.1 6379

在主机上查看主从(master-slave)复制信息

info replication

在从机上查看主从复制信息

 

 

 

 

 

薪火相传:

上一个Slave可以是下一个slave的Master,Slave同样可以接收其他 slaves的连接和同步请求,

那么该slave作为了链条中下一个的master, 可以有效减轻master的写压力,去中心化降低风险

风险是一旦某个slave宕机,后面的slave都没法备份

主机挂了,从机还是从机,无法写数据了

 

 

反客为主:(可以使用哨兵模式自动实现)

当一个master宕机后,后面的slave可以立刻升为master,其后面的slave不用做任何修改。

在从机的redis-cli中使用  slaveof  no one  将从机变为主机

 

这篇关于redis主从复制(读写分离,容灾恢复)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!