Redis 主從同步
- 前言
前言
本環境是基于 Centos 7.8 系統構建Redis學習環境
具體構建,請參考 Redis-5.0.9環境部署
Redis自帶了主從同步的功能解決資料庫冗余的問題,配置較為簡單,接下來我將詳細介紹
主從復制的作用
- 資料冗余:主從復制實作了資料的熱備份,是持久化之外的一種資料冗余方式,
- 故障恢復:當主節點出現問題時,可以由從節點提供服務,實作快速的故障恢復;實際上是一種服務的冗余,
- 負載均衡:在主從復制的基礎上,配合讀寫分離,可以由主節點提供寫服務,由從節點提供讀服務(即寫Redis資料時應用連接主節點,讀Redis資料時應用連接從節點),分擔服務器負載;尤其是在寫少讀多的場景下,通過多個從節點分擔讀負載,可以大大提高Redis服務器的并發量,
- 讀寫分離:可以用于實作讀寫分離,主庫寫、從庫讀,讀寫分離不僅可以提高服務器的負載能力,同時可根據需求的變化,改變從庫的數量;
- 高可用基石:除了上述作用以外,主從復制還是哨兵和集群能夠實施的基礎,因此說主從復制是Redis高可用的基礎,
主從復制程序
Redis 主從復制程序:
- Slave 與 master 建立連接,發送 sync 同步命令
- Master 會啟動一個后臺行程,將資料庫快照保存到檔案中,同時 master 主行程會開始收集新的寫命令并快取,
- 后臺完成保存后,就將此檔案發送給 slave
- Slave 將此檔案保存到硬碟上
主從全量資料同步流程

一個master可以擁有多個slave,一個slave又可以擁有多個slave,如此下去,形成了強大的多級服務器集群架構
環境準備
| role | node | ip | Redis-Version |
|---|---|---|---|
| 主服務器 | reids-yum | 192.168.5.11 | Redis-5.0.9 |
| 從服務器 | reids_source_code | 192.168.5.12 | Redis-5.0.9 |
主服務器配置
[root@reids-yum ~]# vim /etc/redis.conf
bind 192.168.5.11
[root@reids-yum ~]# systemctl restart redis
從服務器配置
[root@reids_source_code ~]# vim /etc/redis/redis.conf
bind 192.168.5.12
replicaof 192.168.5.11 6379
[root@reids_source_code ~]# systemctl restart redis
查看主從同步狀態
主

從

測驗主從同步效果
# 主寫入資料
192.168.5.11:6379> set name wan
OK
192.168.5.11:6379> set age 20
OK
192.168.5.11:6379> get gender
"man"
# 從查看寫入
192.168.5.12:6379> keys *
1) "gender"
2) "age"
3) "name"
192.168.5.12:6379> mget name age gender
1) "wan"
2) "20"
3) "man"
# 主洗掉資料
192.168.5.11:6379> del age
(integer) 1
# 從查看資料
192.168.5.12:6379> keys *
1) "gender"
2) "name"
主從同步配置成功!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/259697.html
標籤:其他
上一篇:Vue回應式原理
