什么是RDB?
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、嘉興網(wǎng)絡(luò)推廣、微信小程序開發(fā)、嘉興網(wǎng)絡(luò)營銷、嘉興企業(yè)策劃、嘉興品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供嘉興建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
1.Redis數(shù)據(jù)存儲在內(nèi)存中,通過save或bgsave可以在硬盤上創(chuàng)建一個rdb的二進制文件。這個rdb文件相當于redis的數(shù)據(jù)的快照。
2.Redis 重啟后,會將硬盤中rdb文件內(nèi)容載入內(nèi)存中。
3.rdb還可以作為復制文件傳輸?shù)拿浇?。如redis主從復制就是通過rdb傳輸?shù)摹?/p>
一、save命令
1.save指令同步創(chuàng)建快照。
Redis客戶端發(fā)送save命令,redis server會將內(nèi)存中的所有數(shù)據(jù)打包,在硬盤上創(chuàng)建rdb文件并保存數(shù)據(jù)。
2.save同步阻塞其他客戶端請求。
因redis是單線程,在執(zhí)行save創(chuàng)建rdb文件時,會阻塞其他redis客戶端的請求。當rdb創(chuàng)建完成時,阻塞結(jié)束。
二、bgsave命令
1.bgsave異步創(chuàng)建快照
客戶端發(fā)送bgsave 命令,redis server 會fork一個子進程,子進程將redis server內(nèi)存中的數(shù)據(jù)打包到硬盤中的rdb文件中。
2.bgsave異步非阻塞
redis服務(wù)端在fork子進程的過程中,會短時間阻塞其他客戶端請求(時間較短,可以忽略不計),子進程創(chuàng)建完成就不會阻塞其他客戶端的請求。子進程創(chuàng)建成功后異步創(chuàng)建rdb文件,并在保存完成之后向主進程發(fā)送信號,通知保存已完成。fork子進程的過程會很快,fork子進程會消耗額外內(nèi)存。
如圖所示,進程名稱為redis-rdb-bgsave
三、自動觸發(fā)
redis.conf中創(chuàng)建快照的配置
save 900 1
save 300 10
save 60 10000
四、文件生成策略
先生成臨時文件,待快照創(chuàng)建完成時,用臨時文件區(qū)替換替換dump.rdb文件。
五、其他觸發(fā)機制
1.master/slave需要進行全量復制時,master服務(wù)會進行bgsave操作
2.debug reload 調(diào)試重啟
3.執(zhí)行shutdown時
RDB的特征:
優(yōu)點:
1.適合大規(guī)模的數(shù)據(jù)恢復,對數(shù)據(jù)完整性和一致性要求不高。
缺點:
1.redis間隔一段時間進行創(chuàng)建rdb快照,如果再最后一次創(chuàng)建快照后宕機,最后一次快照之后所修改的數(shù)據(jù)將丟失。
2.bgsave操作(包含自動觸發(fā)創(chuàng)建rdb)在fork子進程進行創(chuàng)建rdb快照,會拷貝一份內(nèi)存中的數(shù)據(jù),會消耗一定量的內(nèi)存。
動態(tài)關(guān)閉自動創(chuàng)建快照
127.0.0.1:6379>config save ""
查看rdb文件位置
127.0.0.1:6379> CONFIG GET dir
1) "dir"
2) "/var/lib/redis"
redis.conf中與rdb相關(guān)配置
#指定rdb文件名
dbfilename dump-${port}.rdb
#指定數(shù)據(jù)存儲目錄(工作目錄)
dir ./
#bgsave發(fā)生錯誤時,停止寫入數(shù)據(jù)
stop-writes-on-bgsave-error yes
#采用壓縮方式記錄數(shù)據(jù)
rdbcompression yes
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。