Redis學習五:Redis的持久化-RDB
阿新 • • 發佈:2018-12-10
RDB(Redis DataBase)
一、是什麼
1.概念:在指定的時間間隔內將記憶體中的資料集快照寫入磁碟,也就是行話講的Snapshot快照,它恢復時是將快照檔案直接讀到記憶體裡
2.執行方式:
Redis會單獨建立(fork)一個子程序來進行持久化,會先將資料寫入到一個臨時檔案中,待持久化過程都結束了,再用這個臨時檔案替換上次持久化好的檔案。整個過程中,主程序是不進行任何IO操作的,這就確保了極高的效能如果需要進行大規模資料的恢復,且對於資料恢復的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效。RDB的缺點是最後一次持久化後的資料可能丟失。
二、Fork
Fork的作用是複製一個與當前程序一樣的程序。新程序的所有資料(變數、環境變數、程式計數器等)數值都和原程序一致,但是是一個全新的程序,並作為原程序的子程序
三、Rdb 儲存的是dump.rdb檔案
四、配置位置
五、如何觸發RDB快照【重點】
1.配置檔案中預設的快照配置
2.命令save或者是bgsave
Save:save時只管儲存,其它不管,全部阻塞
BGSAVE:Redis會在後臺非同步進行快照操作,快照同時還可以響應客戶端請求。可以通過lastsave命令獲取最後一次成功執行快照的時間