Redis學習-5:Redis的持久化(結束)

慕課網視頻地址:http://www.imooc.com/video/14935

Redis的高性能是因爲它所有的數據都存儲在了內存中,爲了保證Redis在重啓後數據依然存在我們需要對內存中的數據進行持久化操作(持久化就是將內存的數據同步到硬盤中)。

Redis的兩種持久化方式

1:RDB:在制定的時間間隔內將內存中的數據集快照寫入到磁盤。

2:AOF:以日誌的形式記錄服務器所處理的每一個操作,在redis服務啓動之初讀取這個文件,之後去構建我們的數據庫,保證啓動後數據是完整的

持久化的使用方式:

1:單獨使用RDB持久化(默認支持,不需要配置)

優勢:採用這種方式,redis的數據庫就只包含一個文件,對於文件備份非常完美

  可以將備份好的快照考走

  性能最大化,啓動效率更高

缺點:如果享保證數據的高可用性,RDB將不是個好的選擇(30S向硬盤寫一次,但是服務器25S就宕機了)

RDB是通過子進程備份數據的,如果數據集較大的時候,可能會導致服務器停止幾百毫秒

RDB的配置:

redis下的redis.conf下

blob.png

每900s(15分鐘)至少有1個Key發生變化,它會持久化一次

每300s(5分鐘)至少有10個key發生變化

每60s(1分鐘)有1W個key發生變化


blob.png

這個是備份的數據文件名 dump.rdb

保存的路徑當前目錄 ./


blob.png

blob.png

2:單獨使用AOF

優勢:能夠帶來更高的數據安全性

(三種策略:1.每秒同步-異步完成一旦1S內宕機,則這1S內的操作無法保存;

2.每修改同步,視爲同步持久化,效率最低,但是最安全;

3:不同步)

對日誌操作寫入使用的是追加模式,所以說寫入的時候既是宕機,也不會影響之前的數據

如果日誌過大,redis自動啓動重寫機制

劣勢:文件大。運行效率低

配置:還是打開redis.conf


blob.png

redis默認不啓動AOF方式,如果想使用AOF則將no改成yes

啓動之後就會產生appendonly.aof的文件


blob.png

這個地方是同步策略的設置

# appendfsync always  每次修改同步

appendfsync everysec 每秒同步

# appendfsync no  不同步

#表示註釋,未啓動

修改配置文件重啓下redis

3:不持久化,通過配置禁用持久化

4:同時使用RDB和AOF

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