1、准备两台redis服务:
192.168.82.31(master) , port:6379
192.168.82.62(slave) ,port: 6379
注意:两台redis的版本必须一样
2、主(master)配、从(slave)配
redis主服务器(master)一般不用怎么配置 ,端口用默认的6379就行, 但需要开放访问权限 。
1)找到redis配置文件
vim redis.conf;
2)注释bind 127.0.0.1 和 bind 127.0.0.1 ::1
(bind ip 表示绑定ip才能访问这台redis,现在redis从服务器(slave)要访问并同步数据。注释掉说明所有ip都可以访问)
并且设置保护模式为no :protected-mode no ;
如果考虑安全问题可以设置主服务器访问密码:masterauth <master-password> , 从服务器也要对应设置
3)重启redis服务:
./redis-cli shutdown
./redis-server ../etc/redis.conf
4)测试能不能远程访问:
./redis-cli -h 192.168.82.31 -p 6379
# 进入redis说明配置成功,外部可以通过ip远程访问redis
slave从服务器配置也比较简单:
1)只需配置:slaveof <masterip> <masterport>
vim redis.conf;
# 在slaveof的地方添加:
slaveof 192.168.82.31 6379
2)重启redis服务(重复上面步骤3即可)
3)进入redis从从服务器
./redis-cli
输入:info replication 可以查看redis主从信息。然后就可以在master测试有没数据同步过来
4)其他配置可以根据需要配:
daemonize yes , #是否在后台打开
slave-read-only yes , #从服务器是否只读 , (no表示可写,但很容易被master覆盖)
3、附上redis.conf详细配置
关于redis主从复制原理可到网上查找资料
4、redis主从自动切换
https://blog.csdn.net/chen_yao_kerr/article/details/74322077