天天看點

redis之 Redis持久化配置

Redis持久化配置 

Redis的持久化有2種方式   1快照  2是日志

Rdb快照的配置選項

save 900 1      // 900内,有1條寫入,則産生快照

save 300 1000   // 如果300秒内有1000次寫入,則産生快照

save 60 10000  // 如果60秒内有10000次寫入,則産生快照

(這3個選項都屏蔽,則rdb禁用)

stop-writes-on-bgsave-error yes  // 背景備份程序出錯時,主程序停不停止寫入?

rdbcompression yes    // 導出的rdb檔案是否壓縮

Rdbchecksum   yes //  導入rbd恢複時資料時,要不要檢驗rdb的完整性

dbfilename dump.rdb  //導出來的rdb檔案名

dir ./  //rdb的放置路徑

Aof 的配置

appendonly no # 是否打開 aof日志功能,若要禁用aof則設定為no并将aof檔案改名

appendfsync always   # 每1個指令,都立即同步到aof. 安全,速度慢

appendfsync everysec # 折衷方案,每秒寫1次

appendfsync no      # 寫入工作交給作業系統,由作業系統判斷緩沖區大小,統一寫入到aof. 同步頻率低,速度快,

no-appendfsync-on-rewrite  yes: # 正在導出rdb快照的過程中,要不要停止同步aof

auto-aof-rewrite-percentage 100 #aof檔案大小比起上次重寫時的大小,增長率100%時,重寫

auto-aof-rewrite-min-size 64mb #aof檔案,至少超過64M時,重寫

BGREWRITEAOF 背景程序重寫AOF

BGSAVE       背景儲存rdb快照

SAVE         儲存rdb快照

LASTSAVE     上次儲存時間

注: 在dump rdb過程中,aof如果停止同步,會不會丢失?

答: 不會,所有的操作緩存在記憶體的隊列裡, dump完成後,統一操作.

注: aof重寫是指什麼?

答: aof重寫是指把記憶體中的資料,逆化成指令,寫入到.aof日志裡.

以解決 aof日志過大的問題.

問: 如果rdb檔案,和aof檔案都存在,優先用誰來恢複資料?

答: aof

問: 2種是否可以同時用?

答: 可以,而且推薦這麼做

問: 恢複時rdb和aof哪個恢複的快

答: rdb快,因為其是資料的記憶體映射,直接載入到記憶體,而aof是指令,需要逐條執行

繼續閱讀