【Redis持久化】 RDB持久化實驗

【Redis持久化】 RDB持久化實驗

1. 單機版Redis下載、安裝以及生產環境啓動方案

1.1 學習內容

  1. 如何配置RDB持久化
  2. RDB持久化原理
  3. 基於RDB持久化實驗

1.2 如何配置RDB持久化

採用之前部署的6379端口的Redis


# 進入redis配置文件目錄
cd /etc/redis/

# 編輯配置文件
vim 6379.conf

# 配置rdb持久化,大概220行
#每隔5秒,檢查一次,如果有一條數據變更,就生成一個dump快照文件,保存此刻redis內存中完整的數據快照文件,snapshotting
save 5 1

在這裏插入圖片描述

拓展:

  1. save可以設置多個就是多個snapshotting檢查點,每到一個檢查點,就會去check一些,是否有指定key數量發生了變更,如果有,就生成一個新的dump.rdb文件

  2. 可以手動調用save或者bgsave命令,同步或者是異步執行rdb快照文件

1.3 RDB持久化工作原理

  1. redis根據配置嘗試生成rdb快照文件(dump.rdb)
  2. fork一個子進程出來
  3. 子進程嘗試將數據dump到臨時的rdb快照文件中
  4. 完成rdb快照文件的生成後,就會替換之前的快照文件

1.4 rdb持久化實驗

  1. redis設置幾條數據,採用redis-cli SHUTDOWN(正常關閉Redis進程),然後重新啓動Redis,看之前數據還在不在。

拓展:
a. redis-cli SHUTDOWN命令方式停止redis,會在redis退出的時候將內存中的數據立即生成一份完整的rdb快照文件到備份目錄中。

b. 查詢redis備份目錄:vim /etc/redis/6379.conf,搜索"dir",大概在265行,dump.rdb快照文件就存放在該目錄下。

在這裏插入圖片描述

  1. redis保存幾條新的數據,採用kill的方式關閉Redis進程,模擬redis故障一次退出,再重啓redis,查看數據是否還存在。

  2. 手動設置一個save檢查點,save 5 2,測試變更一條和多條數據,5s之後查看dump.rdb文件內容是否發生變更。kill掉redis進程,再重啓redis,查看數據是否存在。

參考石衫老師 《億級流量電商詳情頁系統》課程筆記

親,如果覺得還不錯,點個讚唄!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章