Redis主從複製

2022-09-22 00:45:08 字數 2426 閱讀 6663

主庫:192.168.138.20   6379

從庫:192.168.138.20   6380

配置:1、從庫redis-6380.conf配置檔案中加入如下兩行配置資訊:

sl**eof 192.168.138.20 6379     # 主庫ip + 埠

masterauth 123456          # 主庫 redis 驗證密碼

2、啟動從庫redis

[root@ansible redis-6380]# ./bin/redis-server ./redis-6380.conf

[root@ansible redis-6380]# ps -ef|grep redis

root 9794 9493 0 18:42 pts/0 00:00:00 ./bin/redis-cli -a 123456

root 19696 1 0 22:03 ? 00:00:21 ./bin/redis-server 0.0.0.0:6379

root 19716 17763 0 22:03 pts/2 00:00:00 ./bin/redis-cli -a 123456

root 23312 1 0 23:16 ? 00:00:01 ./bin/redis-server 0.0.0.0:6380

root 23721 17791 0 23:24 pts/3 00:00:00 grep --color=auto redis

3 、登入從庫redis

# -p 指定埠

# -a 指定驗證引數

[root@ansible redis-6380]# ./bin/redis-cli -p 6380 -a 123456

127.0.0.1:6380> ping

pong

4、檢視從庫狀態

127.0.0.1:6380> info replication

# replication

role:sl**e

master_host:127.0.0.1

master_port:6379

master_link_status:up

master_last_io_seconds_ago:5

master_sync_in_progress:0

sl**e_repl_offset:938

sl**e_priority:100

sl**e_read_only:1

connected_sl**es:0

master_replid:d056c9e33dffa78a64abac37a4900ac73ed0e767

master_replid2:0000000000000000000000000000000000000000

master_repl_offset:938

second_repl_offset:-1

repl_backlog_active:1

repl_backlog_size:1048576

repl_backlog_first_byte_offset:1

repl_backlog_histlen:938

127.0.0.1:6380>

5、登入主庫 設定字串資訊,在從庫檢視是否同步

# 主庫

127.0.0.1:6379> set j**a 1

ok# 從庫

127.0.0.1:6380> get j**a

"1"通過上面的案例可以證明主從庫資料同步了

6、當要取消主從複製關係時,可以在從庫執行如下命令

sl**eof no one 將使得這個從屬伺服器關閉複製功能,並從從屬伺服器轉變回主伺服器,原來同步所得的資料集不會被丟棄。

利用『 sl**eof no one 不會丟棄同步所得資料集』這個特性,可以在主伺服器失敗的時候,將從屬伺服器用作新的主伺服器,從而實現無間斷執行。

127.0.0.1:6380> sl**eof no one

ok127.0.0.1:6380> info replication

# replication

role:master

connected_sl**es:0

master_replid:3e3d446f51c00c103f711ed519c7b842713b56cb

master_replid2:d056c9e33dffa78a64abac37a4900ac73ed0e767

master_repl_offset:1439

second_repl_offset:1440

repl_backlog_active:1

repl_backlog_size:1048576

repl_backlog_first_byte_offset:1

repl_backlog_histlen:1439

再次檢視從庫角色資訊發現,role由sl**e變為master

Redis 主從複製

主從複製的開啟,完全是在從節點發起的,不需要我們在主節點做任何事情,從節點開啟主從複製,有3種方式 主從複製主要可分為 連線建立階段 即準備階段 資料同步階段 命令傳播階段 主要作用是在主從節點之間建立連線,為資料同步做好準備 從節點資料的初始化,具體執行的方式是 從節點向主節點傳送psync命令 ...

Redis 主從複製

就是將一台 redis 伺服器的資料,複製到其他的 redis 伺服器,前者為主節點 master leader 後者稱為從節點 sl e follower 資料的複製是單向的,只能從主節點到從節點,一般 master 以寫為主,sl e 以讀為主。redis 主從複製可以根據是否是全量分為全量同步...

redis主從複製

redis的高併發有一種實現方式就是主從架構,乙個master節點,多個sl e節點,可以很好的實現sl e節點的水平擴容 主從架構再加上讀寫分離,master節點負責寫操作,sl e節點負責讀操作,使得redis可以很好的做乙個高併發的處理。有人就會疑惑了 sl e節點上的資料怎麼來的了?所以我們...