Redis持久化方式
Redis持久化方式
Redis持久化是將數據從斷電易失的內存上,保存到永久儲存的設備上
一、方式一:RDB
1.保存真實數據;
2.將指定時間間隔內的內存數據以快照的方式,寫入二進制文件(dump.rdb);
(1)定時快照:固定時間間隔,將數據存儲至磁盤;
(2)定量快照:數據變化一定次數后,將數據存儲至磁盤;3.默認文件:/val/lib/redis/dump.rdb;
實現方式
1.1 服務器執行客戶端發送SAVE或BGSAVE命令(手動保存)
1. 127.0.0.1:6379> SAVE
注:此命令執行時,redis服務器將阻塞,無法處理客戶端發送的命令請求,直至SAVE執行完之后
注:如果RDB文件存在,將會創建新的RDB文件代替
2. 127.0.0.1:6379> BGSAVE
注:此命令執行時,redis服務器會fork()一個子進程去處理,并不影響redis繼續處理客戶端發送的命令請求
1.2 設置配置文件(自動保存)
1.修改配置文件redis.conf
vim /安裝目錄/redis.conf (源碼安裝)
vim /etc/redis.conf (yum/apt-get安裝)
2.修改配置文件redis.conf
save 900 1: 距上次生成RDB文件后,900s內至少有1個key發生改變時,自動支持BGSAVE(默認)
save 300 10: 距上次生成RDB文件后,300s內至少有10個key發生改變時,自動支持BGSAVE(默認)
save 60 10000: 距上次生成RDB文件后,60s內至少有10000個key發生改變時,自動支持BGSAVE(默認)
注:滿足一個save,服務器就會自動執行BGSAVE
注:每次常見RDB文件后,服務器會自動重置時間計數器和次數計數器
二、方式二:AOF
1.當有修改數據庫的命令被執行時;
2.以日志的文本形式記錄服務器所處理的每一個寫、刪除操作,并不記錄查詢操作;
2.存儲的是命令,不是真實數據
實現方式
1.修改配置文件redis.conf
vim /安裝目錄/redis.conf (源碼安裝)
vim /etc/redis.conf (yum/apt-get安裝)
2.配置參數
持久化開啟:appendonly yes # 將no改為yes
持久化開啟:appendfilename "appendonly.aof"
持久化策略:appendfsync always: 每次操作都會立即寫入aof文件中
持久化策略:appendfsync everysec: 每秒持久化一次(默認配置)
持久化策略:appendfsync no: 不主動進行同步操作,默認30s一次
2.重啟服務
redis-cli -h 127.0.0.1 -p 6379 shutdown (源碼安裝)
/etc/init.d/redis-server restart (yum/apt-get安裝)

浙公網安備 33010602011771號