欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Redis的RDB和AOF-創(chuàng)新互聯(lián)

1.數(shù)據(jù)快照RDB

為會(huì)澤等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及會(huì)澤網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、會(huì)澤網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

1.1原理

(1)RDB是將某一時(shí)刻的數(shù)據(jù)持久化到磁盤(pán)中,是一種快照的方式。

(2)redis在進(jìn)行數(shù)據(jù)持久化的過(guò)程中,會(huì)先將數(shù)據(jù)寫(xiě)入到一個(gè)臨時(shí)文件中,待持久化過(guò)程都結(jié)束了,才會(huì)用這個(gè)臨時(shí)文件替換上次持久化好的文件。正是這種特性,讓我們可以隨時(shí)來(lái)進(jìn)行備份,及時(shí)redis處于運(yùn)行狀態(tài);

(3)對(duì)于RDB方式,redis會(huì)單獨(dú)創(chuàng)建(fork)一個(gè)子進(jìn)程來(lái)進(jìn)行持久化,而主進(jìn)程是不會(huì)進(jìn)行任何IO操作的,這樣就確保了redis極高的性能。

(4)如果需要進(jìn)行大規(guī)模數(shù)據(jù)的恢復(fù),且對(duì)于數(shù)據(jù)恢復(fù)的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效。

如果你對(duì)數(shù)據(jù)的完整性非常敏感,那么RDB方式就不太適合你,因?yàn)榧词鼓忝?分鐘都持久化一次,當(dāng)redis故障時(shí),仍然會(huì)有近5分鐘的數(shù)據(jù)丟失。所以,redis還提供了另一種持久化方式,那就是AOF。

1.2生成快照的幾種方法

手動(dòng)觸發(fā):

(1)save命令用于創(chuàng)建當(dāng)前數(shù)據(jù)庫(kù)的備份,該命令將在 redis 安裝目錄dir下創(chuàng)建dump.rdb文件;

如果需要恢復(fù)數(shù)據(jù),只需將備份文件dump.rdb移動(dòng)到 redis 安裝目錄并啟動(dòng)服務(wù)即可。獲取redis目錄可以使用 config get dir命令

(2) bgsave在后臺(tái)執(zhí)行;

(3)shutdown save,關(guān)閉服務(wù)的時(shí)候,shutdown有兩個(gè)選項(xiàng),nosave|save,如果不加,默認(rèn)是save;

自動(dòng)觸發(fā):

(4)配置文件redis.conf中的設(shè)置:

save 900 1

save 300 10

save 60 10000

dbfilename  dump.rdb

1.3 使用rdb文件進(jìn)行還原測(cè)試

注意:還原的時(shí)候需要關(guān)閉aof的功能,否則redis在啟動(dòng)的時(shí)候會(huì)加載appendonly.aof這個(gè)日志文件,這樣恢復(fù)的就不是dump.rdb的內(nèi)容了,而是應(yīng)用的aof日志

#使用redis-benchmark加載測(cè)試數(shù)據(jù),并關(guān)閉aof:

src/redis-benchmark -h 127.0.0.1 -p 6379  -n 200000 -c 20 -d 4 -k 1 --csv > redis_benchmart_$(date +%Y%m%d).log 2>&1

[root@sht-sgmhadoopcm-01 redis]# src/redis-cli

127.0.0.1:6379> config get dir

1) "dir"

2) "/usr/local/redis"

127.0.0.1:6379> config get appendonly

1) "appendonly"

2) "no"

127.0.0.1:6379> keys *

1) "key1"

2) "key2"

3) "key:__rand_int__"

4) "mylist"

5) "counter:__rand_int__"

127.0.0.1:6379> shutdown save

[root@sht-sgmhadoopcm-01 redis]# mv dump.rdb dump.rdb.bak

[root@sht-sgmhadoopcm-01 redis]# src/redis-server redis.conf

[root@sht-sgmhadoopcm-01 redis]# src/redis-cli

127.0.0.1:6379> keys *

(empty list or set)

127.0.0.1:6379> shutdown nosave

把備份的rdb文件放在指定位置,并重啟redis,這樣數(shù)據(jù)又恢復(fù)了

[root@sht-sgmhadoopcm-01 redis]# mv dump.rdb.bak dump.rdb

[root@sht-sgmhadoopcm-01 redis]# src/redis-server redis.conf

[root@sht-sgmhadoopcm-01 redis]# src/redis-cli

127.0.0.1:6379> keys *

1) "key:__rand_int__"

2) "mylist"

3) "key2"

4) "key1"

5) "counter:__rand_int__"

2.AOF(append only file)

2.1 AOF

(1)即只允許追加,不允許更改的文件

開(kāi)啟方法:appendonly yes

AOF方式是將執(zhí)行過(guò)的寫(xiě)指令記錄下來(lái),在數(shù)據(jù)恢復(fù)時(shí)按照從前到后的順序再將指令都執(zhí)行一遍;

同樣數(shù)據(jù)集的情況下,AOF文件要比RDB文件的體積大。而且,AOF方式的恢復(fù)速度也要慢于RDB方式。

我們通過(guò)配置redis.conf中的appendonly yes就可以打開(kāi)AOF功能。如果有寫(xiě)操作(如SET等),redis就會(huì)被追加到AOF文件的末尾。

默認(rèn)的AOF持久化策略是每秒鐘fsync一次(fsync是指把緩存中的寫(xiě)指令記錄到磁盤(pán)中),因?yàn)樵谶@種情況下,redis仍然可以保持很好的處理性能,即使redis故障,也只會(huì)丟失最近1秒鐘的數(shù)據(jù)。

(2)如果在追加日志時(shí),恰好遇到磁盤(pán)空間滿(mǎn)、inode滿(mǎn)或斷電等情況導(dǎo)致日志寫(xiě)入不完整,redis提供了redis-check-aof工具,可以用來(lái)進(jìn)行日志修復(fù):

  • Make a backup copy of your AOF file.

  • Fix the original file using the redis-check-aof tool that ships with Redis: $ redis-check-aof --fix appendonly.aof

  • Optionally use diff -u to check what is the difference between two files.

  • Restart the server with the fixed file.

(3)通過(guò)appendonly.aof文件進(jìn)行還原測(cè)試

127.0.0.1:6379> config get appendonly

1) "appendonly"

2) "yes"

127.0.0.1:6379> mset key1 1 key2 2 key3 3

OK

127.0.0.1:6379> keys *

1) "key3"

2) "key1"

3) "key2"

[root@sht-sgmhadoopcm-01 redis]# cp appendonly.aof appendonly.aof.bak

127.0.0.1:6379> flushall

OK

127.0.0.1:6379> keys *

(empty list or set)

127.0.0.1:6379> shutdown

[root@sht-sgmhadoopcm-01 redis]# rm -rf appendonly.aof

[root@sht-sgmhadoopcm-01 redis]# mv appendonly.aof.bak appendonly.aof

[root@sht-sgmhadoopcm-01 redis]# src/redis-server redis.conf

[root@sht-sgmhadoopcm-01 redis]# src/redis-cli

127.0.0.1:6379> keys *

1) "key1"

2) "key2"

3) "key3"

2.2 aof文件的rewrite

(1)rewrite原理

因?yàn)椴捎昧俗芳臃绞?,如果不做任何處理的?huà),AOF文件會(huì)變得越來(lái)越大,為此,redis提供了AOF文件重寫(xiě)(rewrite)機(jī)制,即當(dāng)AOF文件的大小超過(guò)所設(shè)定的閾值時(shí),redis就會(huì)啟動(dòng)AOF文件的內(nèi)容壓縮,只保留可以恢復(fù)數(shù)據(jù)的最小指令集。假如我們調(diào)用了100次INCR指令,在AOF文件中就要存儲(chǔ)100條指令,但這明顯是很低效的,完全可以把這100條指令合并成一條SET指令,這就是重寫(xiě)機(jī)制的原理。

在進(jìn)行AOF重寫(xiě)時(shí),仍然是采用先寫(xiě)臨時(shí)文件,全部完成后再替換的流程,所以斷電、磁盤(pán)滿(mǎn)等問(wèn)題都不會(huì)影響AOF文件的可用性。

AOF方式的另一個(gè)好處,我們通過(guò)一個(gè)“場(chǎng)景再現(xiàn)”來(lái)說(shuō)明。某同學(xué)在操作redis時(shí),不小心執(zhí)行了flushall,導(dǎo)致redis內(nèi)存中的數(shù)據(jù)全部被清空了,只要redis配置了AOF持久化方式,且AOF文件還沒(méi)有被重寫(xiě)(rewrite),我們就可以用最快的速度暫停redis并編輯AOF文件,將最后一行的FLUSHALL命令刪除,然后重啟redis,就可以恢復(fù)redis的所有數(shù)據(jù)到FLUSHALL之前的狀態(tài)了。但是如果AOF文件已經(jīng)被重寫(xiě)了,那就無(wú)法通過(guò)這種方法來(lái)恢復(fù)數(shù)據(jù)了。

(2)觸發(fā)rewrite的方法

第一種方法:使用bgrewriteaof命令手動(dòng)觸發(fā);

第二種方法:由配置文件控制

auto-aof-rewrite-percentage 100

auto-aof-rewrite-min-size 64mb

比如上邊的參數(shù)設(shè)置的含義:當(dāng)appendonly.aof為小于64M時(shí),不會(huì)觸發(fā)rewrite,當(dāng)文件大64M,增長(zhǎng)率達(dá)到100%,即為128M時(shí),觸發(fā)一次rewrite,這個(gè)時(shí)候redis記住文件rewrite之后的大小,假如為80M,只有等到文件再次漲到160M后,才會(huì)觸發(fā)下一次,依次類(lèi)推

3 總結(jié):

官方推薦同時(shí)開(kāi)啟這兩種備份策略,確保數(shù)據(jù)更加安全;

如果你的業(yè)務(wù)可以接受一定數(shù)據(jù)的丟失,更注重性能,可以只開(kāi)啟RDB;

如果只把redis作為一個(gè)緩存來(lái)用,則不需要開(kāi)啟RDB和AOF;

參考鏈接

https://redis.io/topics/persistence

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

本文題目:Redis的RDB和AOF-創(chuàng)新互聯(lián)
鏈接URL:http://aaarwkj.com/article20/cogoco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶(hù)體驗(yàn)、品牌網(wǎng)站設(shè)計(jì)、全網(wǎng)營(yíng)銷(xiāo)推廣、虛擬主機(jī)、App設(shè)計(jì)、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
黑丝美女被内射视频免费观看| 超碰欧美黄色免费在线| 国产精品成人一区二区三| 精品欧美一区二区在线| 99热这里只有精品56| 国产老熟女高潮精品视频网站免费| 亚洲熟妇av乱码在线| 日韩久久精品五月综合| 欧美aⅴ一区二区三区| 91手机国产三级在线| 天天精品国产av九九久久久| 女同蝴蝶在线看完整版| 欧美亚洲国产日韩另类| 国产午夜亚洲精品福利| 青青草免费公开视频久久| 成人精品超碰一区二区| 亚洲一区精品中文字幕 | 日韩精品毛片精品一区到三区| 九月丁香花开综合网| 少妇高潮在线观看免费| 熟妇人妻久久中文字幕麻豆网| 国产黄色大片在线关看| 男人自拍天堂在线视频| 一区二区高清中文字幕| 精品欧美黑人一区二区| 久久成人免费在线电影| 国内精品人妻中文字幕| 国产在线高清精品二区| 91日本精品一区二区| 绯色av一区二区三区蜜臀| 亚洲欧美综合精品二区| 国产成人av中文字暮在线| 国产婷婷色三区一区二区| 国产激情久久久久久久久久久| av毛片天堂在线观看| 日韩视频一区二区三区四区| 深夜十八禁在线免费观看| 日韩人妻系列在线观看| 一区二区三区亚洲精品在线| 色噜噜噜欧美人妻色综合| 国产在线观看91精品一区|