[
root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 info |grep -A 3 'Replication'
# Replication role:master connected_slaves:1 slave0:192.168.1.113,6379,online
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123
redis 192.168.1.112:6379> set 1 a OK redis 192.168.1.112:6379> get 1 "a"
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 shutdown
[root@server12 ~]# tail -f /var/log/messages
Dec 3 15:27:34 server12 redis[32151]: Connecting to MASTER... Dec 3 15:27:34 server12 redis[32151]: MASTER <-> SLAVE sync started Dec 3 15:27:34 server12 redis[32151]: Error condition on socket for SYNC: Connection refused
[root@server12 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123
redis 192.168.1.113:6379> get 1 "a"
[root@server11 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 redis 192.168.1.112:6379> get 1 (nil) redis 192.168.1.112:6379> exit
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 redis 192.168.1.113:6379> get 1 (nil) |
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123
redis 192.168.1.112:6379> get 1 (nil) redis 192.168.1.112:6379> set 1 a OK redis 192.168.1.112:6379> set 2 b OK redis 192.168.1.112:6379> exit
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 shutdown
[root@server12 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123
redis 192.168.1.113:6379> get 1 "a" redis 192.168.1.113:6379> get 2 "b" redis 192.168.1.113:6379> exit [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 redis 192.168.1.112:6379> get 1 (nil) redis 192.168.1.112:6379> get 2 (nil) redis 192.168.1.112:6379> exit
[root@server12 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123
redis 192.168.1.113:6379> get 1 (nil) redis 192.168.1.113:6379> get 2 (nil) redis 192.168.1.113:6379> exit |
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 redis 192.168.1.112:6379> set 1 a OK redis 192.168.1.112:6379> set 2 b OK redis 192.168.1.112:6379> set 3 c OK redis 192.168.1.112:6379> exit [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 redis 192.168.1.113:6379> get 1 "a" redis 192.168.1.113:6379> get 2 "b" redis 192.168.1.113:6379> get 3 "c" redis 192.168.1.113:6379> exit 此次先關閉從實例,再關閉主實例!啓動則先啓動從實例,測試數據;再啓動主實例,再測試數據! [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 shutdown [root@server12 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 shutdown [root@server12 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 redis 192.168.1.113:6379> get 1 "a" redis 192.168.1.113:6379> get 2 "b" redis 192.168.1.113:6379> get 3 "c" [root@server11 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 redis 192.168.1.112:6379> get 1 (nil) redis 192.168.1.112:6379> get 2 (nil) redis 192.168.1.112:6379> get 3 (nil) redis 192.168.1.112:6379> exit [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 redis 192.168.1.113:6379> get 1 (nil) redis 192.168.1.113:6379> get 2 (nil) redis 192.168.1.113:6379> get 3 (nil) redis 192.168.1.113:6379> exit |
實踐證實,在redis主從讀寫分離條件下,快照持久化只有開在主實例側才能夠保證數據能夠跨越實例重啓! redis
[root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 redis 192.168.1.112:6379> set 1 a OK redis 192.168.1.112:6379> set 2 b OK redis 192.168.1.112:6379> set 3 c OK redis 192.168.1.112:6379> set 4 d OK redis 192.168.1.112:6379> exit [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 redis 192.168.1.113:6379> get 4 "d" redis 192.168.1.113:6379> exit [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 shutdown [root@server12 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 shutdown [root@server11 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf [root@server12 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112 -a 123 get 4 "d" [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113 -a 123 get 4 "d" |