Redis持久化之AOF

2021-10-06 15:04:40 字數 1392 閱讀 8393

目錄

aof的工作原理

aof的啟動

aof的修復

aof重寫的規則

aof的優缺點

總結redis的持久化

以日誌的形式記錄每乙個寫操作,將redis執行過的所有寫指令記錄下來(讀操作不記錄),只許追加檔案但不可以改寫檔案,redis啟動之初會讀取該檔案重新構建資料。也就是說,redis重啟的話就根據日誌檔案的內容將寫指令從前到後執行一次以完成資料的恢復工作

需要重啟redis服務端方能生效

注意如果aof檔案有錯誤,redis是無法啟動的,我們需要修改aof檔案==》使用redis提供的工具redis-check-aof-fix

修復命令如下:

aof預設是檔案無限追加,檔案會越來越大,如果aof檔案大於64m,redis就會fork乙個新的程序來將我們的檔案進行重寫

優點:當設定為always時,每次寫操作都會同步,檔案完整性會非常好。當設定erverysec時,每秒執行一次同步,可能丟失的資料為1s,當設定為no時,不會自動執行同步,交給作業系統自己來同步,速度是最快的。

缺點:aof的檔案大小遠遠大於rdb,修復的速度也比rdb慢。aof的執行效率比rdb慢,所以redis預設配置未rdb持久化

# rewrite 重寫

1.rdb持久化方式能夠在指定時間間隔內對資料進行快照儲存2.aof持久化方式記錄每次對伺服器寫的操作,當伺服器重啟時會重新執行這些命令來恢復原始的資料,aof命令以redis協議追加儲存每次寫的操作末尾,redis還能對aof檔案進行後台重寫,使得aof檔案體積不至於過大。3.如果只做快取,也就是只希望資料在伺服器執行時存在,那完全可以不考慮持久化4.當同時開啟rdb和aof

5.效能建議

redis持久化之AOF持久化

aof與rdb持久化通過儲存資料庫中的鍵值對來記錄資料庫狀態不同,aof持久化是通過儲存redis伺服器所執行的寫命令來記錄資料庫狀態的。被寫入aof檔案的所有命令都是以redis的命令請求協議格式儲存的。當aof持久化功能處於開啟狀態,伺服器在執行完乙個寫命令之後,會以協議格式將被執行的寫命令追加...

redis持久化之AOF

號外號外,新建 redis 交流討論群 332160890,歡迎加入!一 說明 1.1aof 相關配置項 配置項作用aof rewrite perc 百分比閾值,當 aof的增量超過這個閾值時,開始 aof的 rewrite操作 aof rewrite min size 當aof 的檔案大小超過該值...

Redis持久化之AOF

aof是redis的另一種持久化方式。什麼是aof?aof的實現原理 aof相關配置 redis的配置檔案 配置檔案的第934行 everysec 將aof buf快取區的所有內容寫入到aof檔案,如果上次同步aof檔案的時間與當前時間大於1秒,那麼會再次對aof檔案進行同步,同步操作由乙個執行緒專...