關(guān)于Redis數(shù)據(jù)庫(kù)三種持久化方案介紹
一、回顧Redis
1、redis的特點(diǎn)
redis是一個(gè)內(nèi)存中的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)系統(tǒng)。優(yōu)點(diǎn):內(nèi)存操作速度比硬盤(pán)很快。缺點(diǎn):但是內(nèi)存沒(méi)有辦法保存數(shù)據(jù)。
2、redis提供了磁盤(pán)持久化
通過(guò)磁盤(pán)持久化功能,就可以把內(nèi)存中的數(shù)據(jù),持久化到磁盤(pán)當(dāng)中去。數(shù)據(jù)就可以長(zhǎng)時(shí)間的進(jìn)行保存。
二、方案一:bgsave
1、如何操作
啟動(dòng)redis-cli 客戶端,輸入一條數(shù)據(jù),并輸入持久化命令basave
就可以完成持久化數(shù)據(jù)。
2、優(yōu)缺點(diǎn)
優(yōu)點(diǎn):簡(jiǎn)單。一個(gè)命令,就可以將存儲(chǔ)內(nèi)存的數(shù)據(jù),持久化到磁盤(pán)當(dāng)中。
缺點(diǎn):頻繁使用命令。每當(dāng)存儲(chǔ)一個(gè)數(shù)據(jù),就需要使用此命令。
三、方案二:配置文件rdb
rdb是redis自帶的持久化方案。默認(rèn)會(huì)開(kāi)啟的。
redis保存到內(nèi)存的數(shù)據(jù),當(dāng)達(dá)到規(guī)定的實(shí)際、更改Key的數(shù)量,會(huì)保存在/user/local/redis/bin/dump.rdb的文件中。
1、配置文件解說(shuō):
dump.rdb的文件,會(huì)根據(jù)配置多少秒發(fā)生Key的變化,就會(huì)把數(shù)據(jù)存到dump.rdb文件中去。當(dāng)重新啟動(dòng)時(shí),會(huì)先去dump.rdb中去取出數(shù)據(jù),放在數(shù)據(jù)庫(kù)當(dāng)中。
1、dbfilename dump.rdb 文件名字
2、dir ./ 目錄 。文件存在的位置
900秒之內(nèi)只要有一個(gè)key發(fā)生變化,就會(huì)把key的值存儲(chǔ)到磁盤(pán)當(dāng)中。
2、優(yōu)缺點(diǎn):
優(yōu)點(diǎn):文件配置后,數(shù)據(jù)自動(dòng)化持久化到磁盤(pán)。當(dāng)更改配置后,就不需要在手動(dòng)配置了。
缺點(diǎn):不能事實(shí)持久化。例如在59秒,10000個(gè)數(shù)據(jù)發(fā)生了變化。突然宕機(jī)了,那么就會(huì)無(wú)法持久化。
四、方案三:aof
redis提供的第三種方案:aof
追加apendonly ,把我們輸入的命令會(huì)追加到 appenonly中去,后臺(tái)開(kāi)啟了一個(gè)線程,每當(dāng)我們輸入一條命令,就會(huì)把命令追加到appenonly文件當(dāng)中。當(dāng)我們重啟項(xiàng)目時(shí),會(huì)先來(lái)appenonly文件讀取內(nèi)容(相當(dāng)于我們沖敲打一遍命令)。
1、 修改配置文件:
配置文件:vim /user/local/redis/bin/redis.conf
修改配置后,重啟服務(wù):
下面是重啟服務(wù)前 以及 重啟服務(wù)后,bin目錄:
當(dāng)我們插入一條數(shù)據(jù)后:發(fā)現(xiàn).aof文件,會(huì)有相應(yīng)的信息。
2、優(yōu)缺點(diǎn)
優(yōu)點(diǎn):實(shí)時(shí)記錄命令,實(shí)施持久化到磁盤(pán)
缺點(diǎn):
時(shí)間的積累,aof文件非常的大,時(shí)間的積累重啟redis,就非常的慢。
當(dāng)我們頻繁使用redis,開(kāi)了aof。有數(shù)萬(wàn)條數(shù)據(jù),如果都放在aof當(dāng)中,aof文件會(huì)非常的大。如果宕機(jī)了,并重啟服務(wù)器后,redis會(huì)先去aof文件去讀取命令,那么會(huì)去讀數(shù)G的文件大小的內(nèi)容。會(huì)非常的慢。
總結(jié)
到此這篇關(guān)于關(guān)于Redis數(shù)據(jù)庫(kù)三種持久化方案介紹的文章就介紹到這了,更多相關(guān)Redis持久化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
手把手教你用Redis 實(shí)現(xiàn)點(diǎn)贊功能并且與數(shù)據(jù)庫(kù)同步
本文主要介紹了Redis 實(shí)現(xiàn)點(diǎn)贊功能并且與數(shù)據(jù)庫(kù)同步,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Redis官方可視化工具RedisInsight的安裝使用詳細(xì)教程(功能強(qiáng)大)
RedisInsight是Redis官方出品的可視化管理工具,可用于設(shè)計(jì)、開(kāi)發(fā)、優(yōu)化你的Redis應(yīng)用。支持深色和淺色兩種主題,界面非常炫酷,接下來(lái)通過(guò)本文給大家介紹Redis官方可視化工具RedisInsight的安裝使用過(guò)程,需要的朋友可以參考下2022-04-04Redis和springboot 整合redisUtil類的示例代碼
這篇文章主要介紹了Redis和springboot 整合redisUtil類的示例代碼,本文通過(guò)實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12談?wù)凴edis分布式鎖的正確實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于Redis分布式鎖的正確實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Redis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08redis中如何使用lua腳本讓你的靈活性提高5個(gè)逼格詳解
這篇文章主要給大家介紹了關(guān)于redis中如何使用lua腳本讓你的靈活性提高5個(gè)逼格的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10Redis中ziplist壓縮列表的實(shí)現(xiàn)
本文主要介紹了Redis中ziplist壓縮列表的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06