redis持久化存儲
原因:redis是存放在內存中的,斷電會導致數據丟失
解決方法:把redis數據進行持久性存儲,將其存儲在磁盤中。
存儲方式:
1.RDB
RDB中文名為快照/內存快照,Redis按照一定的時間周期將目前服務中的所有數據全部寫入到磁盤中。
缺點:
如果備份時間周期是5分鍾,但是在4分59秒時redis崩潰,會造成這段時間內的數據無法備份,從而丟失數據。
配置處理:
# 周期性執行條件的設置格式為
save <seconds> <changes>
# 默認的設置為:
save 900 1
save 300 10
save 60 10000
# 以下設置方式為關閉RDB快照功能
save ""
2.AOF
AOF全稱是Append Only File,記錄對redis操作的每次命令,將其記錄到磁盤中。如果新建一個kes-val,然后delete,記錄到
磁盤中,在文件讀取寫入到redis時,此kes-val不會存在,這樣就造成了文件不必要的增加,所以需要 日志重寫功能(講kes-val從磁盤中去掉,從而節省空間)。
配置處理:
appendonly:默認情況下AOF功能是關閉的,將該選項改為yes以便打開Redis的AOF功能。
appendfsync設置三個值,分別是:
always 每次對redis的操作都會記錄,效率最低
everysec 每秒對redis的操作記錄到磁盤
no 大約每30秒對redis的操作記錄到磁盤
找到redis配置文件的位置命令: find / | grep redis.conf
配置好后重啟redis命令: redis-server restart
相關網址:
http://www.voidcn.com/article/p-ynznogsb-bde.html
