Redis提供了兩種主要的數(shù)據(jù)持久化方法:RDB(Redis Database Backup)和AOF(Append Only File)。
要配置RDB持久化,你需要在redis.conf配置文件中設(shè)置以下選項(xiàng):
save
:定義在多長(zhǎng)時(shí)間內(nèi)至少有N個(gè)鍵值變更時(shí),會(huì)觸發(fā)一次快照。例如,save 900 1
表示900秒內(nèi)有1個(gè)鍵值變更時(shí),會(huì)觸發(fā)一次快照。你可以使用逗號(hào)分隔的多個(gè)鍵值對(duì)來設(shè)置多個(gè)條件。dir
:定義快照文件的存儲(chǔ)目錄。例如,dir /var/lib/redis
表示將快照文件存儲(chǔ)在/var/lib/redis
目錄下。save900 1
、save300 10
、save60 10000
等:這些是示例配置,表示在不同時(shí)間間隔內(nèi)滿足一定條件時(shí)觸發(fā)快照。在配置好RDB持久化后,Redis會(huì)在后臺(tái)自動(dòng)執(zhí)行SAVE
或BGSAVE
命令來創(chuàng)建快照文件。你也可以手動(dòng)執(zhí)行SAVE
或BGSAVE
命令來立即創(chuàng)建快照。
要配置AOF持久化,你需要在redis.conf配置文件中設(shè)置以下選項(xiàng):
appendonly
:?jiǎn)⒂肁OF持久化,將其值設(shè)置為yes
。appendfilename
:定義AOF文件的名稱。例如,appendfilename "appendonly.aof"
表示將AOF文件命名為appendonly.aof
。dir
:定義AOF文件的存儲(chǔ)目錄。例如,dir /var/lib/redis
表示將AOF文件存儲(chǔ)在/var/lib/redis
目錄下。sync
:定義AOF文件的同步策略。有三個(gè)可選值:no
(默認(rèn)值,不進(jìn)行同步),everysec
(每秒同步一次)和always
(每次寫操作都同步)。在配置好AOF持久化后,Redis會(huì)在后臺(tái)自動(dòng)執(zhí)行BGREWRITEAOF
命令來重寫AOF文件。你也可以手動(dòng)執(zhí)行BGREWRITEAOF
命令來強(qiáng)制重寫AOF文件。
注意:在啟用AOF持久化時(shí),請(qǐng)確保Redis的dir
配置指向的目錄具有適當(dāng)?shù)淖x寫權(quán)限,以便在服務(wù)器啟動(dòng)時(shí)能夠正確讀取AOF文件并恢復(fù)數(shù)據(jù)。