1. 程式人生 > 實用技巧 >#Redis的兩種持久化方式:RDB、AOF @FDDLC

#Redis的兩種持久化方式:RDB、AOF @FDDLC

一、引言

我們知道,Redis是一個記憶體資料庫。如果不做備份的話,Redis這次關閉、下次開啟、資料就沒了。

那怎麼辦?做備份唄!這個備份,當然是指把原本在記憶體中的Redis資料儲存到硬碟當中,也就是所謂的持久化。

Redis持久化有兩種方式,一種是RDB(RedisDataBase),可以理解為資料快照,即每隔一段時間對記憶體中的所有Redis資料來個備份;另一種是AOF(Append Only File),也就是日誌的形式,Redis根據一定的策略,對使用者的操作進行記錄。

二、如何配置

1、RDB的配置

在Redis的根目錄下找到:

在它裡面找到:

咱們給它加上一行:save 1 1

這樣就變成了:

什麼意思呢?就是說:如果1秒鐘內至少有1次操作的話,就會進行RDB備份。

注意:直接啟動Redis的話,配置不會生效:

上面是直接啟動時的提示,意思是說因為你沒指定配置檔案,它採用的是預設配置!

指定配置檔案的方法:在Redis的根目錄下開啟CMD,要保證CMD的工作目錄是Redis的根目錄!

然後輸入命令:redis-server.exe redis.windows.conf

從上圖中可以看出,Redis不再說你沒指定配置檔案了!

開始測試:如果1秒內有1次以上的操作,能否觸發Redis的RDB備份?

從上面可以看出,咱們的Redis還是很聽話的。如果1秒內有1次以上的操作,Redis的確進行了RDB備份!

總結:

a、經過測試,這個操作,是指增刪改操作,不包含查!

b、生成的RDB備份在Redis根目錄下,名字叫做

2、AOF的配置

首先還是開啟redis.windows.conf,找到這一項,改成:

這樣就開啟了AOF備份。

繼續!找到:

這裡給出了三種AOF的備份策略(#號表示被註釋掉了):

第一行表示記錄每一次的增刪改(不含查)操作,第二行表示每秒進行一次日誌記錄,第三行表示不進行日誌記錄。

設定完後,當你指定了配置檔案啟動Redis時,可以發現Redis根目錄下生成了一個0kb的

當你進行了增刪改後,肯定有1秒了,這時你可以發現這個原先0kb的appendonly.aof已經變成1kb了!

注意:當你開啟AOF備份方式時,原先預設的RDB方式依然存在,即RDB和AOF是可以共存的。

三、總結

有關RDB和AOF的總結:

1、預設方式是RDB。

2、這兩種方式可以共存。

3、一般而言,AOF的開銷更大。