7.redis7.0.15一主两从解决方案(不含哨兵)及主从切换方案

1.软件及环境准备

--1主2从不带哨兵的主从配置过程。
主:192.168.75.57/16379
从:192.168.75.57/26379
从:192.168.75.57/36379

--主库 
mkdir -p /chac/app/redis
mkdir -p /chac/app/redis16379/log
mkdir -p /chac/app/redis16379/conf
mkdir -p /chac/app/redis16379/data

--从库1
mkdir -p /chac/app/redis26379/log
mkdir -p /chac/app/redis26379/conf
mkdir -p /chac/app/redis26379/data

--从库2
mkdir -p /chac/app/redis36379/log
mkdir -p /chac/app/redis36379/conf
mkdir -p /chac/app/redis36379/data

--可以设置三个节点,我这里用一个节点分别设置不同的三个端口模拟一主两从。

groupadd -g 601 redis
useradd -u 6001 -g 601 redis
id redis
passwd redis  --密码: redis 

--授予redis用户管理redis 
chown -R redis:redis /chac


2.资源限制参数设置。

echo "redis hard nofile 10240">>/etc/security/limits.conf
echo "redis soft nofile 10240">>/etc/security/limits.conf
echo "redis hard nproc 8192">>/etc/security/limits.conf
echo "redis soft nproc 8192">>/etc/security/limits.conf

3.安装并编译redis软件。

tar zxvf redis-7.0.15.tar.gz
cd redis-7.0.15
make --编译 
cd src
make PREFIX=/chac/app/redis install

4.配置redis的bin目录到$PATH

vi ~/.bash_profile
PATH=$PATH:$HOME/.local/bin:/chac/app/redis/bin:$HOME/bin

重新登录。

5.内存参数调整 

su - root
echo "vm.overcommit_memory=1">>/etc/sysctl.conf
echo "never>/sys/kernel/mm/transparent_hugepage/enabled">>/etc/rc.local
echo "net.core.somaxconn=2048">>/etc/sysctl.conf

动态加载:
sysctl -p

6.调整redis.conf

主库:
su - redis
vi /chac/app/redis16379/conf/redis.conf

daemonize yes
logfile "/chac/app/redis16379/log/redis.log"
dir /chac/app/redis16379/data
requirepass myredis
masterauth myredis
timeout 300   #300秒后没连上就断开。
#bind 127.0.0.1
bind 192.168.75.57
port 16379 
timeout 600
maxclients 1000000
tcp-backlog 511
tcp-keepalive 300
supervised no
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "redis_16379.rdb"



--主库启动。
redis-server /chac/app/redis16379/conf/redis.conf

[redis@redis7 data]$ ps -ef |grep redis
redis     21110      1  0 14:51 ?        00:00:01 redis-server 192.168.75.57:16379

7.从库1部署

从库:192.168.75.57:26379
su - redis
[redis@redis7 conf]$ cat /chac/app/redis26379/conf/redis.conf 
daemonize yes
logfile "/chac/app/redis26379/log/redis.log"
dir /chac/app/redis26379/data
requirepass myredis
masterauth myredis
timeout 300 
port 26379
bind 192.168.75.57
timeout 600
maxclients 1000000
tcp-backlog 511
tcp-keepalive 300
supervised no
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "redis_26379.rdb"
slaveof 192.168.75.57 16379
pidfile "/chac/app/redis26379/log/redis26379.pid"


--从库1启动。
redis-server /chac/app/redis26379/conf/redis.conf

[redis@redis7 conf]$ ps -ef |grep redis
redis     22317      1  0 15:07 ?        00:00:00 redis-server 192.168.75.57:16379
redis     22373      1  0 15:08 ?        00:00:00 redis-server 192.168.75.57:26379

8.从库2部署

从库:192.168.75.57:36379
su - redis
[redis@redis7 conf]$ more /chac/app/redis36379/conf/redis.conf 
daemonize yes
logfile "/chac/app/redis36379/log/redis.log"
dir /chac/app/redis36379/data
requirepass myredis
masterauth myredis
timeout 300 
port 36379
bind 192.168.75.57
timeout 600
maxclients 1000000
tcp-backlog 511
tcp-keepalive 300
supervised no
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "redis_36379.rdb"
slaveof 192.168.75.57 16379
pidfile "/chac/app/redis36379/log/redis36379.pid"

--从库2启动;
--默认后台启动进程。
redis-server /chac/app/redis36379/conf/redis.conf

9.进程查看

--进程查看 
[redis@redis7 conf]$ ps -ef |grep redis
redis     22317      1  0 15:07 ?        00:00:00 redis-server 192.168.75.57:16379
redis     22373      1  0 15:08 ?        00:00:00 redis-server 192.168.75.57:26379
redis     22636      1  0 15:11 ?        00:00:00 redis-server 192.168.75.57:36379


--进程查看。
[redis@redis7 conf]$ netstat -an|grep 6379 
tcp        0      0 192.168.75.57:36379     0.0.0.0:*               LISTEN     
tcp        0      0 192.168.75.57:16379     0.0.0.0:*               LISTEN     
tcp        0      0 192.168.75.57:26379     0.0.0.0:*               LISTEN     
tcp        0      0 192.168.75.57:16379     192.168.75.57:58063     ESTABLISHED
tcp        0      0 192.168.75.57:58065     192.168.75.57:16379     ESTABLISHED
tcp        0      0 192.168.75.57:58063     192.168.75.57:16379     ESTABLISHED
tcp        0      0 192.168.75.57:16379     192.168.75.57:58065     ESTABLISHED

10.启动redis客户端

----10.启动redis客户端
启动redis客户端:
redis-cli -h 192.168.75.57 -p 6379 -a myredis
16379>info 

role:master
connected_slaves:2
slave0:ip=192.168.75.57,port=26379,state=online,offset=406,lag=0
slave1:ip=192.168.75.57,port=36379,state=online,offset=406,lag=0


--通过Info命令可以看到:它有两个从库:192.168.75.57:26379/192.168.75.57:36379

11.测试

redis-cli --raw  -h 192.168.75.57 -p 16379 -a myredis
192.168.75.57:16379> set myname  "薛双奇"
OK
192.168.75.57:16379> get myname
薛双奇


--然后访问从库。
[redis@redis7 ~]$ redis-cli --raw -h 192.168.75.57 -p 26379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:26379> get myname
薛双奇
192.168.75.57:26379> 


--然后访问从库。
[root@redis7 ~]# redis-cli --raw -h 192.168.75.57 -p 36379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:36379> get myname
薛双奇
192.168.75.57:36379> 

12.多些一些值测试

--多些一些值,然后测试。
set chac:test1:feild1 "feild1"
set chac:test1:feild2 "feild2"
set chac:test1:feild3 "feild3"
set chac:test1:feild4 "feild4"
set chac:test1:feild5 "feild5"
set chac:test1:feild6 "feild6"
set chac:test1:feild7 "feild7"
set chac:test1:feild8 "feild8"
set chac:test1:feild9 "feild9" 

--主库写入。
192.168.75.57:16379> set chac:test1:feild1 "feild1"
OK
192.168.75.57:16379> set chac:test1:feild2 "feild2"
OK
192.168.75.57:16379> set chac:test1:feild3 "feild3"
OK
192.168.75.57:16379> set chac:test1:feild4 "feild4"
OK
192.168.75.57:16379> set chac:test1:feild5 "feild5"
OK
192.168.75.57:16379> set chac:test1:feild6 "feild6"
OK
192.168.75.57:16379> set chac:test1:feild7 "feild7"
OK
192.168.75.57:16379> set chac:test1:feild8 "feild8"
OK
192.168.75.57:16379> set chac:test1:feild9 "feild9" 
OK

--从库1检查。
get chac:test1:feild1 
get chac:test1:feild2 
get chac:test1:feild3 
get chac:test1:feild4 
get chac:test1:feild5 
get chac:test1:feild6 
get chac:test1:feild7 
get chac:test1:feild8 
get chac:test1:feild9 


192.168.75.57:26379> get chac:test1:feild1
feild1
192.168.75.57:26379> get chac:test1:feild2
feild2
192.168.75.57:26379> get chac:test1:feild3
feild3
192.168.75.57:26379> get chac:test1:feild4
feild4
192.168.75.57:26379> get chac:test1:feild5
feild5
192.168.75.57:26379> get chac:test1:feild6
feild6
192.168.75.57:26379> get chac:test1:feild7
feild7
192.168.75.57:26379> get chac:test1:feild8
feild8
192.168.75.57:26379> get chac:test1:feild9
feild9

--从库2检查。
192.168.75.57:36379> get chac:test1:feild1 
feild1
192.168.75.57:36379> get chac:test1:feild2
feild2
192.168.75.57:36379> get chac:test1:feild3 
feild3
192.168.75.57:36379> get chac:test1:feild4
feild4
192.168.75.57:36379> get chac:test1:feild5 
feild5
192.168.75.57:36379> get chac:test1:feild6 
feild6
192.168.75.57:36379> get chac:test1:feild7 
feild7
192.168.75.57:36379> get chac:test1:feild8
feild8
192.168.75.57:36379> get chac:test1:feild9
feild9

13.日志检查

--主库日志检查
[redis@redis7 log]$ tail -100f /chac/app/redis16379/log/redis.log
22317:M 18 Jan 2024 15:08:17.678 * Streamed RDB transfer with replica 192.168.75.57:26379 succeeded (socket). Waiting for REPLCONF ACK from slave to enable streaming
22317:M 18 Jan 2024 15:08:17.678 * Synchronization with replica 192.168.75.57:26379 succeeded
22317:M 18 Jan 2024 15:11:30.211 * Replica 192.168.75.57:36379 asks for synchronization
22317:M 18 Jan 2024 15:11:30.211 * Full resync requested by replica 192.168.75.57:36379
22317:M 18 Jan 2024 15:11:30.211 * Delay next BGSAVE for diskless SYNC
22317:M 18 Jan 2024 15:11:35.885 * Starting BGSAVE for SYNC with target: replicas sockets
22317:M 18 Jan 2024 15:11:35.887 * Background RDB transfer started by pid 22651
22651:C 18 Jan 2024 15:11:35.889 * Fork CoW for RDB: current 2 MB, peak 2 MB, average 2 MB
22317:M 18 Jan 2024 15:11:35.890 # Diskless rdb transfer, done reading from pipe, 1 replicas still up.
22317:M 18 Jan 2024 15:11:35.891 * Background RDB transfer terminated with success
22317:M 18 Jan 2024 15:11:35.892 * Streamed RDB transfer with replica 192.168.75.57:36379 succeeded (socket). Waiting for REPLCONF ACK from slave to enable streaming
22317:M 18 Jan 2024 15:11:35.892 * Synchronization with replica 192.168.75.57:36379 succeeded
22317:M 18 Jan 2024 15:22:34.078 * 1 changes in 900 seconds. Saving...
22317:M 18 Jan 2024 15:22:34.079 * Background saving started by pid 23501
23501:C 18 Jan 2024 15:22:34.084 * DB saved on disk
23501:C 18 Jan 2024 15:22:34.085 * Fork CoW for RDB: current 2 MB, peak 2 MB, average 2 MB
22317:M 18 Jan 2024 15:22:34.181 * Background saving terminated with success
22317:M 18 Jan 2024 15:27:35.014 * 10 changes in 300 seconds. Saving...
22317:M 18 Jan 2024 15:27:35.016 * Background saving started by pid 23886
23886:C 18 Jan 2024 15:27:35.019 * DB saved on disk
23886:C 18 Jan 2024 15:27:35.020 * Fork CoW for RDB: current 2 MB, peak 2 MB, average 2 MB
22317:M 18 Jan 2024 15:27:35.117 * Background saving terminated with success


--从库1日志查看:
tail -100f /chac/app/redis26379/log/redis.log
22373:S 18 Jan 2024 15:08:12.025 * Connecting to MASTER 192.168.75.57:16379
22373:S 18 Jan 2024 15:08:12.025 * MASTER <-> REPLICA sync started
22373:S 18 Jan 2024 15:08:12.025 * Non blocking connect for SYNC fired the event.
22373:S 18 Jan 2024 15:08:12.025 * Master replied to PING, replication can continue...
22373:S 18 Jan 2024 15:08:12.026 * Partial resynchronization not possible (no cached master)
22373:S 18 Jan 2024 15:08:17.673 * Full resync from master: 4a642e77f2096b86fa8512aacccdb826015afba7:14
22373:S 18 Jan 2024 15:08:17.676 * MASTER <-> REPLICA sync: receiving streamed RDB from master with EOF to disk
22373:S 18 Jan 2024 15:08:17.677 * MASTER <-> REPLICA sync: Flushing old data
22373:S 18 Jan 2024 15:08:17.677 * MASTER <-> REPLICA sync: Loading DB in memory
22373:S 18 Jan 2024 15:08:17.678 * Loading RDB produced by version 7.0.15
22373:S 18 Jan 2024 15:08:17.678 * RDB age 0 seconds
22373:S 18 Jan 2024 15:08:17.678 * RDB memory usage when created 0.99 Mb
22373:S 18 Jan 2024 15:08:17.678 * Done loading RDB, keys loaded: 0, keys expired: 0.
22373:S 18 Jan 2024 15:08:17.678 * MASTER <-> REPLICA sync: Finished with success
22373:S 18 Jan 2024 15:23:13.087 * 1 changes in 900 seconds. Saving...
22373:S 18 Jan 2024 15:23:13.118 * Background saving started by pid 23569
23569:C 18 Jan 2024 15:23:13.122 * DB saved on disk
23569:C 18 Jan 2024 15:23:13.123 * Fork CoW for RDB: current 2 MB, peak 2 MB, average 2 MB
22373:S 18 Jan 2024 15:23:13.219 * Background saving terminated with success
22373:S 18 Jan 2024 15:28:14.064 * 10 changes in 300 seconds. Saving...
22373:S 18 Jan 2024 15:28:14.066 * Background saving started by pid 23934
23934:C 18 Jan 2024 15:28:14.070 * DB saved on disk
23934:C 18 Jan 2024 15:28:14.070 * Fork CoW for RDB: current 2 MB, peak 2 MB, average 2 MB
22373:S 18 Jan 2024 15:28:14.167 * Background saving terminated with success


--从库2日志检查:
tail -100f /chac/app/redis36379/log/redis.log
22636:S 18 Jan 2024 15:11:30.211 * Connecting to MASTER 192.168.75.57:16379
22636:S 18 Jan 2024 15:11:30.211 * MASTER <-> REPLICA sync started
22636:S 18 Jan 2024 15:11:30.211 * Non blocking connect for SYNC fired the event.
22636:S 18 Jan 2024 15:11:30.211 * Master replied to PING, replication can continue...
22636:S 18 Jan 2024 15:11:30.211 * Partial resynchronization not possible (no cached master)
22636:S 18 Jan 2024 15:11:35.885 * Full resync from master: 4a642e77f2096b86fa8512aacccdb826015afba7:294
22636:S 18 Jan 2024 15:11:35.888 * MASTER <-> REPLICA sync: receiving streamed RDB from master with EOF to disk
22636:S 18 Jan 2024 15:11:35.889 * MASTER <-> REPLICA sync: Flushing old data
22636:S 18 Jan 2024 15:11:35.890 * MASTER <-> REPLICA sync: Loading DB in memory
22636:S 18 Jan 2024 15:11:35.891 * Loading RDB produced by version 7.0.15
22636:S 18 Jan 2024 15:11:35.891 * RDB age 0 seconds
22636:S 18 Jan 2024 15:11:35.891 * RDB memory usage when created 1.01 Mb
22636:S 18 Jan 2024 15:11:35.891 * Done loading RDB, keys loaded: 0, keys expired: 0.
22636:S 18 Jan 2024 15:11:35.891 * MASTER <-> REPLICA sync: Finished with success
22636:S 18 Jan 2024 15:25:33.398 * 10 changes in 300 seconds. Saving...
22636:S 18 Jan 2024 15:25:33.399 * Background saving started by pid 23739
23739:C 18 Jan 2024 15:25:33.417 * DB saved on disk
23739:C 18 Jan 2024 15:25:33.418 * Fork CoW for RDB: current 4 MB, peak 4 MB, average 3 MB
22636:S 18 Jan 2024 15:25:33.517 * Background saving terminated with success

14.持久化文件查看 

[redis@redis7 data]$ ll /chac/app/redis16379/data/redis_16379.rdb 
-rw-rw-r-- 1 redis redis 430 1月  18 15:27 /chac/app/redis16379/data/redis_16379.rdb

--从库持久化文件查看
ll /chac/app/redis26379/data/redis_26379.rdb
ll /chac/app/redis36379/data/redis_36379.rdb
-rw-rw-r-- 1 redis redis 430 1月  18 15:28 /chac/app/redis26379/data/redis_26379.rdb
-rw-rw-r-- 1 redis redis 378 1月  18 15:25 /chac/app/redis36379/data/redis_36379.rdb

15、模拟备库宕机恢复。

---(1)模拟从节点1宕机。
[redis@redis7 data]$ redis-cli --raw -h 192.168.75.57 -p 26379 -a myredis
192.168.75.57:26379> shutdown

--(2)主库写入数据
192.168.75.57:16379> set chac:test2:zd1 zd1
OK
192.168.75.57:16379> set chac:test2:zd2 zd2
OK

(3)从节点启动并检查是否有最新的数据。
[redis@redis7 data]$ redis-cli --raw -h 192.168.75.57 -p 26379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:26379> get chac:test2:zd1
zd1
192.168.75.57:26379> get chac:test2:zd2
zd2

--发现从节点启动后,可以同步主节点的数据。
(4)查看该从节点的日志 
24542:S 18 Jan 2024 15:36:23.439 * Connecting to MASTER 192.168.75.57:16379
24542:S 18 Jan 2024 15:36:23.440 * MASTER <-> REPLICA sync started
24542:S 18 Jan 2024 15:36:23.440 * Non blocking connect for SYNC fired the event.
24542:S 18 Jan 2024 15:36:23.440 * Master replied to PING, replication can continue...
24542:S 18 Jan 2024 15:36:23.440 * Trying a partial resynchronization (request 4a642e77f2096b86fa8512aacccdb826015afba7:2722).
24542:S 18 Jan 2024 15:36:23.441 * Successful partial resynchronization with master.
24542:S 18 Jan 2024 15:36:23.442 * MASTER <-> REPLICA sync: Master accepted a Partial Resynchronization

--主库接受了,从库同步主库部分数据的任务.并且同步完成。

16、模拟主库宕机,从库切换为主库。

场景:
1.主库宕机(192.168.75.57:16379)。
2.从库1(192.168.75.57:26379)切换为主库。
3.从库2(192.168.75.57:16379)从从库1(新主库(192.168.75.57:26379))同步。
4.原主库变为新主库的从库(192.168.75.57:16379)。

(1)主库宕机
ps -ef |grep 16379
redis     22317      1  0 15:07 ?        00:00:05 redis-server 192.168.75.57:16379
[redis@redis7 log]$ kill -9 22317


(2)从1变成主
[redis@redis7 log]$ redis-cli --raw -h 192.168.75.57 -p 26379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:26379> slaveof no one 
OK
192.168.75.57:26379> info 
# Replication
role:master
connected_slaves:0

--从库1已经变成主库,从库个数为0。
(3)从库2变为新主库的从库;
--将角色转换为slave;
[redis@redis7 log]$ redis-cli --raw -h 192.168.75.57 -p 36379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:36379> replicaof  192.168.75.57 26379
OK
192.168.75.57:36379> info
# Replication
role:slave
master_host:192.168.75.57
master_port:26379

(4)新主库写入数据。
redis-cli --raw -h 192.168.75.57 -p 26379 -a myredis
192.168.75.57:26379> set chac:test3:zd1 "3-zd1"
OK
192.168.75.57:26379> set chac:test3:zd2 "3-zd2" 
OK

(5)检查192.168.75.57:36379 节点是否同步。
[redis@redis7 log]$ redis-cli --raw -h 192.168.75.57 -p 36379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:36379> get chac:test3:zd1
3-zd1
192.168.75.57:36379> get  chac:test3:zd2 
3-zd2
192.168.75.57:36379> 
--说明新的从库192.168.75.57:36379,已经认到了主库,并开始同步数据。

(6)修复损坏的主库,并把它变成从库。
redis-server /chac/app/redis16379/conf/redis.conf
192.168.75.57:16379> replicaof  192.168.75.57 26379
OK
192.168.75.57:16379> info 
role:slave
master_host:192.168.75.57
master_port:26379
192.168.75.57:16379> get chac:test3:zd1
3-zd1
192.168.75.57:16379> get  chac:test3:zd2 
3-zd2

--由此可见,损坏的库修复后,已经能够认到主库,并且能从
(7)数据库大小验证
[redis@redis7 log]$ redis-cli --raw -h 192.168.75.57 -p 16379 -a myredis
192.168.75.57:16379> dbsize
14
192.168.75.57:16379> exit
[redis@redis7 log]$ redis-cli --raw -h 192.168.75.57 -p 26379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:26379> dbsize
14
192.168.75.57:26379> exit
[redis@redis7 log]$ redis-cli --raw -h 192.168.75.57 -p 36379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:36379> dbsize
14

--可见键值相同,即完全同步。

17、模拟从库完全损坏,重新搭建节点,并做全同步。

1.从库1:192.168.75.57:36379 损坏。
2.从库1:192.168.75.57:36379 数据损坏重新同步。

(1)从库1损坏 
[redis@redis7 log]$ ps -ef |grep redis
redis     22636      1  0 15:11 ?        00:00:07 redis-server 192.168.75.57:36379
[redis@redis7 log]$ kill 22636

(2)删除数据文件
[redis@redis7 data]$ ll
总用量 4
-rw-r--r-- 1 redis redis 514 1月  18 15:54 redis_36379.rdb
[redis@redis7 data]$ rm -rf /chac/app/redis36379/data/redis_36379.rdb 
[redis@redis7 data]$ ll
总用量 0
(3)重启
[redis@redis7 data]$ redis-server /chac/app/redis36379/conf/redis.conf
[redis@redis7 data]$ ps -ef |grep redis-server
redis     24542      1  0 15:36 ?        00:00:04 redis-server 192.168.75.57:26379
redis     25801      1  0 15:53 ?        00:00:01 redis-server 192.168.75.57:16379
redis     26747      1  0 16:05 ?        00:00:00 redis-server 192.168.75.57:36379
[redis@redis7 data]$ ll
总用量 0

--虽然启动了,但是没有生成持久化文件。
(4)历史数据同步
redis-cli --raw -h 192.168.75.57 -p 36379 -a myredis
192.168.75.57:36379>info  --删除文件自动后默认是主库:
role:master
192.168.75.57:36379> replicaof  192.168.75.57 26379
OK
192.168.75.57:36379> exit
[redis@redis7 data]$ ll
总用量 4
-rw-r--r-- 1 redis redis 514 1月  18 16:09 redis_36379.rdb
[redis@redis7 data]$ redis-cli --raw -h 192.168.75.57 -p 36379 -a myredis
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.75.57:36379> dbsize
14
192.168.75.57:36379> 

--由此可知,如果删除了文件,我们重新把它指定为从库,就可以重新从主库拉取全量的历史数据。
tail -100f /chac/app/redis36379/log/redis.log

27499:S 18 Jan 2024 16:15:57.162 * MASTER <-> REPLICA sync started
27499:S 18 Jan 2024 16:15:57.162 * REPLICAOF 192.168.75.57:26379 enabled (user request from 'id=4 addr=192.168.75.57:26670 laddr=192.168.75.57:36379 fd=8 name= age=18 idle=0 flags=N db=0 sub=0 psub=0 ssub=0 multi=-1 qbuf=50 qbuf-free=20424 argv-mem=27 multi-mem=0 rbs=1024 rbp=0 obl=0 oll=0 omem=0 tot-mem=22323 events=r cmd=replicaof user=default redir=-1 resp=2')
27499:S 18 Jan 2024 16:15:57.162 * Non blocking connect for SYNC fired the event.
27499:S 18 Jan 2024 16:15:57.163 * Master replied to PING, replication can continue...
27499:S 18 Jan 2024 16:15:57.163 * Trying a partial resynchronization (request a9d7dbf7507a6b7a0f2b23654cd4d135ae74ee7d:5959).
27499:S 18 Jan 2024 16:15:57.164 * Successful partial resynchronization with master.
27499:S 18 Jan 2024 16:15:57.164 * MASTER <-> REPLICA sync: Master accepted a Partial Resynchronization.

18.总结 

redis的一主两从,如果不使用哨兵,则可以按照这个方式配置。redis的从库默认按照增量的方式拉取主库的数据,并同步到备库去。

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值