Redis的持久化
Redis的持久化有兩種方法
一,RDB:是redis的默認方法,RDB相當於照快照,保存的是一種狀態(保存的文件後綴是 rdb)
優點:1.快照保存數據速度極快,還原數據速度極快
2.適用於災難備份
缺點:1.小內存機器不適合使用。
RDB機制符合要求就會照快照。(隨時隨地的啟動),會占用一部分系統資源(突然地),
很可能內存不足直接宕機。(宕機後,服務器會關閉,非正常關閉)
適用於內存比較充裕的計算機。
RDB照快照的條件:
1.服務器正常關閉時候,照快照。 ./bin/redis-cli shutdown
2.key 滿足下列任何一個條件,照快照。
save 900 1: 15分鐘內有1個key發生變化,則dump內存快照。
save 300 10: 5分鐘內有10個key發生變化,則dump內存快照。
save 60 10000: 1分鐘內有10000個key發生變化,則dump內存快照。
二,AOF:使用日誌保存數據操作(默認為關閉)
修改配置:1.開啟 AOF :將appendonly no改為appendonly yes
2.去掉 appendfsync (everysec 或 always 或 no )前方的 #
3.按下Esc或Ctrl+C輸入:wq(保存並退出)
4.關機(可選) ./bin/redis-cli shutdown
5.看需要是否刪除 rdb文件 :rm -rf dump.rdb
6.加載文件並啟動: ./bin/redis-server ./redis.conf
3 種配置方式:
1.每秒同步:每秒進行一次AOF保存數據。 安全性低,比較節省系統資源
everysec :每秒同步一次,該策略為AOF的缺省策略
2.每修改同步:修改進行AOF保存數據 比較安全,但是極浪費效率
always : 每次有數據修改發生時都會寫入AOF文件
3.不同步(默認) 不安全
no :從不同步。高效但是數據不會被持久化
優點:1.持續性占用極少量的內存資源
缺點:日誌文件會特別大,不適用與災難恢復。回復效率遠遠低於RDB.
Redis的持久化