Redis主从读写分离配置
Posted 局部地区血淌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis主从读写分离配置相关的知识,希望对你有一定的参考价值。
环境描述:
主redis:192.168.10.1 6379
从redis:192.168.10.2 6380
一、主从配置
1
、将主从redis配置文件redis.conf中的aemonize no 改为
yes
2、修改从redis配置文件redis.conf中的port 6379
改为 6380,添加
slaveof
192.168.10.1 6379
3、启动主从服务
主redis:
[[email protected] redis-2.8.3]# src/redis-server /soft/redis-2.8.3-master/redis-2.8.3/redis.conf
从redis:
[[email protected] redis-2.8.3]# src/redis-server /soft/redis-2.8.3-slave/redis-2.8.3/redis.conf
4、测试数据同步
主redis:
[[email protected] redis-2.8.3]#
src/redis-cli -p 6379
127.0.0.1:6379> set name abc
OK
127.0.0.1:6379> get name
"abc"
127.0.0.1:6379>
从redis:
[[email protected]
redis-2.8.3]# src/redis-cli -p 6380
127.0.0.1:6380> get name
"abc"
127.0.0.1:6380>
5、默认是读写分离的
在从redis:
[[email protected]
redis-2.8.3]# src/redis-cli -p 6380
127.0.0.1:6380> set name 123
(error) READONLY You can‘t write against a read only
slave.
二、主从切换
1、停止主redis
[[email protected]
redis-2.8.3]# src/redis-cli -n 6379 shutdown
[[email protected] redis-2.8.3]# src/redis-cli -p
6379
Could not connect to Redis at 127.0.0.1:6379:
Connection refused
not connected>
2、将从redis设成主redis
[[email protected] redis-2.8.3]# src/redis-cli -p
6380 slaveof NO ONE
OK
3、测试从redis是否切换从主redis
[[email protected]
redis-2.8.3]# src/redis-cli -p 6380
127.0.0.1:6380> set name 123
OK
127.0.0.1:6380> get name
"123"
127.0.0.1:6380>
4、原来的主redis恢复正常了,要重新切换回去
1)将现在的主redis的数据进行保存
[[email protected]
redis-2.8.3]# src/redis-cli -p 6380
127.0.0.1:6380> get name
"abc"
127.0.0.1:6380> set name 123
OK
127.0.0.1:6380> get name
"123"
127.0.0.1:6380> save
OK
127.0.0.1:6380> get name
"123"
127.0.0.1:6380>
2)将现在的主redis根目录下dump.rdb文件拷贝覆盖到原来主redis的根目录
3)启动原来的主redis
[[email protected]
redis-2.8.3]# src/redis-server /soft/redis-2.8.3-master/redis-2.8.3/redis.conf
4)在现在的主redis中切换
[[email protected]
redis-2.8.3]# src/redis-cli -p 6380 slaveof 192.168.10.1 6379
OK
以上是关于Redis主从读写分离配置的主要内容,如果未能解决你的问题,请参考以下文章