您好,登錄后才能下訂單哦!
這篇文章主要介紹“Redis的持久化是什么意思”,在日常操作中,相信很多人在Redis的持久化是什么意思問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Redis的持久化是什么意思”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
持久化機制:
client redis[內存] ------> 內存數據 數據持久化--> 磁盤
redis 官方提供了兩種不同的持久化方法將數據存儲到硬盤里面分別是:
1、快照(Snapshot):保存這一時刻的數據狀態(重新加載快照,實現數據的恢復)
1.1 特點:這種將某一時刻的所有數據都寫入硬盤中,當然這也是redis 默認的 持久化方式,保存的文件是以 .rdb 形式結尾的文件,因此這種方式也稱之為RDB 方式。
1.2、快照生成方式:
客戶端方式:BGSAVE 和 SAVE 指令
服務器配置自動觸發
#3.服務器配置方式:15分鐘有一次寫操作,保存快照。5分鐘有一次寫操作,保存快照。1分鐘有一次寫操作,保存快照。;配置文件中存在任意一種配置,都會觸發快照
快照可能會丟失某一時刻的數據:如,剛吧一個時刻的數據保存快照,又進來新的兩條數據,但是還沒有到下一次保存快照的時間或者條件,就會丟失這次的數據。
2、AOF(Append Only File) 只讀追加日志文件:將所有redis 寫命令記錄到日志文件中
配置AOf 頻率方式:在配置文件中,修改配置:appendfsync everysec
3、AOF 文件的重寫
3.1、AOF 帶來的問題
AOF 的方式也同時帶來可另外一個問題,持久化文件會變得越來越大,例如我們用 incr test 命令 100次,文件中必須保存全部的100條命令,其實有99條都是多余的。因為要恢復數據庫的狀態其實文件中保存一條set 命令就夠了,為了壓縮aof的持久化文件,redis提供了 AOF 重寫機制。
解釋:一開始AOF文件大小設置為32M,當文件大小大于64M(也就是相當于原文件大小的一倍),促發重寫機制,文件大小變為了20M,當文件大小又變成了40M時,重新促發重寫機制。
4、重寫原理
注意:重寫aof 文件的操作,并沒有讀取舊的 aof 文件,而是將整個內存中的數據庫內容用命令的方式重寫了一個新的 aof 文件,替換原有的文件這點 和快照有點類似。
到此,關于“Redis的持久化是什么意思”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。