#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的開銷更大。