在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Redis持久化分為兩種:RDB和AOF

阿銘linux ? 來(lái)源:阿銘linux ? 2023-02-21 09:22 ? 次閱讀

前言

Redis持久化,一個(gè)老掉牙的問(wèn)題,但是面試官就是喜歡問(wèn)。這也是我們學(xué)Redis必會(huì)的一個(gè)知識(shí)點(diǎn)。Redis作為內(nèi)存數(shù)據(jù)庫(kù),它工作時(shí),數(shù)據(jù)都保存在內(nèi)存里,這也是它為什么很快的一個(gè)原因。但存到內(nèi)存里肯定是有丟數(shù)據(jù)的風(fēng)險(xiǎn),所以Redis是有設(shè)計(jì)持久化的。Redis持久化分為兩種:RDB和AOF。

RDB持久化

RDB(Redis DataBase),是redis默認(rèn)的存儲(chǔ)方式,RDB持久化其實(shí)就是將內(nèi)存的數(shù)據(jù)直接做了一份快照到磁盤(pán)上。觸發(fā)RDB持久化的方式有:

符合配置的快照保存規(guī)則(配置文件里save開(kāi)頭的配置);

執(zhí)行save或者bgsave命令;

執(zhí)行flushall命令;

執(zhí)行主從復(fù)制操作 (第一次)。

配置文件redis.conf中,save開(kāi)頭的配置為RDB持久化相關(guān)配置。具體解釋如下:

save "" 表示關(guān)閉rdb持久化;

save 3600 1 表示每1小時(shí)至少有1個(gè)key改變,就觸發(fā)一次持久化可以寫(xiě)多個(gè)條件;

save 3600 1 300 100 60 10000 這里定義了三個(gè)策略,它們相互之間為或的關(guān)系。

AOF持久化

AOF(AppendOnly File)持久化,是其將Reids執(zhí)行過(guò)的所有寫(xiě)指令記錄下來(lái),保存到日志里,類似MySQL的bin-log。默認(rèn)配置文件里該持久化方式是關(guān)閉的,需要將配置修改為:

appendonly yes
由于AOF是將Redis服務(wù)的寫(xiě)操作日志寫(xiě)到日志文件里,當(dāng)寫(xiě)操作非常頻繁時(shí),那么它對(duì)磁盤(pán)也會(huì)造成很大的壓力。所以,AOF的磁盤(pán)數(shù)據(jù)落地(fsync函數(shù))也有三個(gè)策略: Always:表示只要有寫(xiě)入就會(huì)調(diào)用fsync函數(shù); Everysec:表示每秒調(diào)用fsync函數(shù)一次; No:表示不調(diào)用fscyn函數(shù),完全跟著系統(tǒng)走;

16191ff2-b173-11ed-bfe3-dac502259ad0.png

建議選擇everysec,比較保守一些。

AOF重寫(xiě)

AOF文件如果不做干預(yù),它會(huì)一直增漲,直到將你的磁盤(pán)寫(xiě)滿。好在Redis給AOF提供了重寫(xiě)機(jī)制。我們可以直接執(zhí)行如下命令,進(jìn)行AOF重寫(xiě):

bgrewriteaof;
執(zhí)行完該命令后,AOF文件會(huì)根據(jù)已經(jīng)持久化的RDB文件和現(xiàn)有AOF文件重新整理,它會(huì)把無(wú)用的寫(xiě)日志清空,最終達(dá)到瘦身目的。 當(dāng)然,AOF還有一個(gè)重寫(xiě)的配置,兩個(gè)參數(shù):

參數(shù) 說(shuō)明
auto-aof-rewrite-min-size AOF文件必須要不低于這個(gè)尺寸時(shí)才會(huì)觸發(fā)重寫(xiě),后面的每次重寫(xiě)就不會(huì)根據(jù)這個(gè)變量了(根據(jù)上一次重寫(xiě)完成之后的大小)。此變量?jī)H初始化啟動(dòng)redis有效
auto-aof-rewrite-percentage 如果該數(shù)值定義為80,則表示當(dāng)AOF文件增長(zhǎng)的尺寸超過(guò)上次大?。ˋOF文件上次重寫(xiě)后的大小會(huì)被記錄下來(lái))百分80時(shí)就會(huì)觸發(fā)重寫(xiě)操作

RDB和AOF如何選

在實(shí)際生產(chǎn)環(huán)境中,根據(jù)數(shù)據(jù)量、應(yīng)用對(duì)數(shù)據(jù)的安全要求、預(yù)算限制等不同情況,會(huì)有各種各樣的持久化策略。 如,完全不使用任何持久化、使用RDB持久化或AOF持久化的一種,或同時(shí)開(kāi)啟快照持久化和AOF持久化等。此外,持久化的選擇必須與Redis的主從策略一起考慮,因?yàn)橹鲝膹?fù)制與持久化同樣具有數(shù)據(jù)備份的功能,而且主機(jī)Master和從機(jī)Slave可以獨(dú)立的選擇持久化方案。

如果Redis中的數(shù)據(jù)完全丟棄也沒(méi)有關(guān)系(如Redis完全用作DB層數(shù)據(jù)的cache),那么無(wú)論是單機(jī),還是主從架構(gòu),都可以不進(jìn)行任何持久化。 在單機(jī)環(huán)境下(對(duì)于個(gè)人開(kāi)發(fā)者,這種情況可能比較常見(jiàn)),如果可以接受十幾分鐘或更多的數(shù)據(jù)丟失,選擇RDB持久化對(duì)Redis的性能更加有利,如果只能接受秒級(jí)別的數(shù)據(jù)丟失,應(yīng)該選擇AOF。

但在多數(shù)情況下,我們都會(huì)配置主從環(huán)境,Slave的存在既可以實(shí)現(xiàn)數(shù)據(jù)的熱備,也可以進(jìn)行讀寫(xiě)分離分擔(dān)Redis讀請(qǐng)求,以及在Master宕掉后繼續(xù)提供服務(wù)。在這種情況下,一種可行的做法是:

Master:完全關(guān)閉持久化,這樣可以讓Master的性能達(dá)到最好;

Slave:關(guān)閉RDB持久化,開(kāi)啟AOF(如果對(duì)數(shù)據(jù)安全要求不高,開(kāi)啟RDB持久化關(guān)閉AOF也可以),并定時(shí)對(duì)持久化文件進(jìn)行備份(如備份到其他文件夾,并標(biāo)記好備份的時(shí)間)。然后關(guān)閉AOF的自動(dòng)重寫(xiě),然后添加定時(shí)任務(wù),在每天Redis閑時(shí)(如凌晨12點(diǎn))調(diào)用bgrewriteaof。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)庫(kù)
    +關(guān)注

    關(guān)注

    7

    文章

    3901

    瀏覽量

    65780
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    849

    瀏覽量

    27543
  • MYSQL數(shù)據(jù)庫(kù)

    關(guān)注

    0

    文章

    96

    瀏覽量

    9773
  • Redis
    +關(guān)注

    關(guān)注

    0

    文章

    385

    瀏覽量

    11325

原文標(biāo)題:一文搞懂Redis持久化

文章出處:【微信號(hào):aming_linux,微信公眾號(hào):阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何開(kāi)啟RDB持久化方式

    ? RDB快照(Redis DataBase) RDB是一快照存儲(chǔ)持久化方式,具體就是將Redis
    的頭像 發(fā)表于 06-25 11:52 ?1098次閱讀
    如何開(kāi)啟<b class='flag-5'>RDB</b><b class='flag-5'>持久</b>化方式

    Redis是什么?簡(jiǎn)述它的優(yōu)缺點(diǎn)?

    /s,寫(xiě)的速度是81000次/s。 支持?jǐn)?shù)據(jù)持久化,支持AOFRDB兩種持久化方式。 支持事務(wù), Re
    的頭像 發(fā)表于 10-09 10:37 ?1197次閱讀

    Redis持久化機(jī)制介紹

    Redis持久化機(jī)制? 為了能夠重用Redis數(shù)據(jù),或者防止系統(tǒng)故障,我們需要將Redis中的數(shù)據(jù)寫(xiě)入到磁盤(pán)空間中,即持久化。
    的頭像 發(fā)表于 10-09 11:44 ?664次閱讀
    <b class='flag-5'>Redis</b><b class='flag-5'>持久</b>化機(jī)制介紹

    Redis持久RDB方式介紹

    Redis持久Redis是一個(gè)內(nèi)存數(shù)據(jù)庫(kù),為了保證數(shù)據(jù)的持久性,它提供了兩種持久化方案:
    的頭像 發(fā)表于 10-09 14:56 ?693次閱讀
    <b class='flag-5'>Redis</b><b class='flag-5'>持久</b>化<b class='flag-5'>RDB</b>方式介紹

    Redis持久AOF原理學(xué)習(xí)

    。AOF文件中存儲(chǔ)的就是序列化后的reids命令。 AOF同步和RDB類似之處在于都是采用fork進(jìn)程來(lái)處理: 通過(guò)這張圖,我們知道了Redis是將客戶端傳入的命令直接寫(xiě)入
    的頭像 發(fā)表于 10-09 15:02 ?569次閱讀
    <b class='flag-5'>Redis</b><b class='flag-5'>持久</b>化<b class='flag-5'>AOF</b>原理學(xué)習(xí)

    redis持久化方式有幾種及配置

    Redis是一內(nèi)存數(shù)據(jù)庫(kù),為了避免數(shù)據(jù)丟失,需要將數(shù)據(jù)持久化到磁盤(pán)上。Redis提供了兩種持久
    的頭像 發(fā)表于 12-04 11:09 ?842次閱讀

    redis兩種持久化方式的區(qū)別

    的完整性和一致性。 Redis提供了兩種持久化方式:RDBRedis Database)和AOF
    的頭像 發(fā)表于 12-04 11:12 ?683次閱讀

    redis持久化方式RDBAOF的區(qū)別

    Redis 是一個(gè)高性能的鍵值對(duì)數(shù)據(jù)庫(kù),提供了兩種持久化方式:RDBAOFRDB 是將
    的頭像 發(fā)表于 12-04 16:25 ?1046次閱讀

    redis持久化機(jī)制和如何實(shí)現(xiàn)持久

    Redis是一款高性能的非關(guān)系型數(shù)據(jù)庫(kù),其持久化機(jī)制是保證數(shù)據(jù)在重啟后仍能夠保存的關(guān)鍵。Redis提供了兩種方式來(lái)實(shí)現(xiàn)持久化:
    的頭像 發(fā)表于 12-05 10:02 ?623次閱讀

    redis持久化機(jī)制優(yōu)缺點(diǎn)

    Redis是一個(gè)基于內(nèi)存的高性能鍵值存儲(chǔ)系統(tǒng),它提供了多種持久化機(jī)制來(lái)保證數(shù)據(jù)的可靠性。本文將詳細(xì)介紹Redis持久化機(jī)制,并分析其優(yōu)缺點(diǎn)。 一、
    的頭像 發(fā)表于 12-05 10:03 ?956次閱讀

    redis里數(shù)據(jù)什么時(shí)候持久

    Redis是一開(kāi)源的高性能、非關(guān)系型內(nèi)存數(shù)據(jù)庫(kù),它使用了鍵值對(duì)存儲(chǔ)數(shù)據(jù),并且支持多種數(shù)據(jù)結(jié)構(gòu)。 Redis提供了持久化機(jī)制,以確保在服務(wù)器重啟后數(shù)據(jù)不會(huì)丟失。
    的頭像 發(fā)表于 12-05 10:05 ?596次閱讀

    云容器redis持久化配置

    丟失。 Redis提供了不同的持久化機(jī)制,可以根據(jù)需要進(jìn)行配置。本文將詳細(xì)介紹云容器中Redis持久化配置及其相關(guān)配置項(xiàng)。 一、Redis
    的頭像 發(fā)表于 12-05 10:07 ?679次閱讀

    redis數(shù)據(jù)會(huì)自動(dòng)清除嗎

    將數(shù)據(jù)以二進(jìn)制格式快照的形式保存到磁盤(pán)上,以便在重啟時(shí)恢復(fù)數(shù)據(jù)。這個(gè)功能可以通過(guò)配置文件或者命令來(lái)啟用,并可以設(shè)置自動(dòng)觸發(fā)或定時(shí)觸發(fā)。但需要注意的是,RDB持久化是異步的,所以在Redis意外終止時(shí)可能會(huì)丟失最近修改的數(shù)據(jù)。
    的頭像 發(fā)表于 12-05 10:13 ?2785次閱讀

    redis持久rdbaof一起用好處

    Redis是一個(gè)流行的內(nèi)存數(shù)據(jù)庫(kù),它通過(guò)使用不同的持久化機(jī)制來(lái)確保數(shù)據(jù)的持久性。RDBAOFRedi
    的頭像 發(fā)表于 12-05 10:17 ?1020次閱讀

    Redis緩存與Memcached的比較

    關(guān)鍵特性和差異: 1. 數(shù)據(jù)存儲(chǔ) Redis: Redis是一個(gè)開(kāi)源的鍵值存儲(chǔ),支持多種數(shù)據(jù)結(jié)構(gòu),如字符串、列表、集合、有序集合、散列、位圖、超日志和地理空間索引。 它支持持久化,可以將內(nèi)存中的數(shù)據(jù)保存到磁盤(pán),支持
    的頭像 發(fā)表于 12-18 09:33 ?513次閱讀
    主站蜘蛛池模板: 久久综合九色综合网站 | 国产精品第九页 | 天堂电影免费在线资源 | 日韩草逼| 日韩黄a级成人毛片 | 777色淫网站女女 | 好硬好湿好爽再深一点h视频 | 韩国精品视频 | 国产午夜精品福利 | ccav在线永久免费看 | 天天草天天操 | 俄罗斯aaaaa一级毛片 | 日本人zzzwww | 日本s色大片在线观看 | 黄频网 | 日韩精品毛片 | 欧美高清一区 | 欧美精品二区 | 视频一区二区三区在线观看 | 成人欧美精品大91在线 | 日本xxx69| 色偷偷成人网免费视频男人的天堂 | 特级一级全黄毛片免费 | 久久国产乱子伦精品免费午夜 | 一级毛片在线播放 | 欧美伦理一区 | 国产三片理论电影在线 | 碰免费人人人视频 | 色爽爽爽爽爽爽爽爽 | 天天色姑娘 | 天天躁夜夜躁狠狠躁躁88 | 丁香花高清在线观看 | 五月婷婷六月丁香综合 | 激情网五月 | 5566精品资源在线播放 | 高清一区二区 | 欧美天天性 | 免费又爽又黄禁片视频在线播放 | 国产精品一一在线观看 | 免费看大尺度视频在线观看 | 99热久 |