艾銻知識(shí) | mysql,redis數(shù)據(jù)備份方案
2020-02-10 18:27 作者:admin 瀏覽量:
迎戰(zhàn)疫情,艾銻無(wú)限用愛(ài)與您同行
為中國(guó)中小企業(yè)提供免費(fèi)IT外包服務(wù)
這次的肺炎疫情對(duì)中國(guó)的中小企業(yè)將會(huì)是沉重的打擊,據(jù)釘釘和微信兩個(gè)辦公平臺(tái)數(shù)據(jù)統(tǒng)計(jì)現(xiàn)有2億左右的人在家遠(yuǎn)程辦公,那么對(duì)于中小企業(yè)的員工來(lái)說(shuō)不懂IT技術(shù)將會(huì)讓他們面臨的最大挑戰(zhàn)和困難。
電腦不亮了怎么辦?系統(tǒng)藍(lán)屏如何處理?辦公室的電腦在家如何連接?網(wǎng)絡(luò)應(yīng)該如何設(shè)置?VPN如何搭建?數(shù)據(jù)如何對(duì)接?服務(wù)器如何登錄?數(shù)據(jù)安全如何保證?數(shù)據(jù)如何存儲(chǔ)?視頻會(huì)議如何搭建?業(yè)務(wù)系統(tǒng)如何開(kāi)啟等等一系列的問(wèn)題,都會(huì)困擾著并非技術(shù)出身的您。
好消息是當(dāng)您看到這篇文章的時(shí)候,就不用再為上述的問(wèn)題而苦惱,您只需撥打艾銻無(wú)限的全國(guó)免費(fèi)熱線電話:400 650 7820,就會(huì)有我們的遠(yuǎn)程工程師為您解決遇到的問(wèn)題,他們可以遠(yuǎn)程幫您處理遇到的一些IT技術(shù)難題。
如遇到免費(fèi)熱線占線,您還可以撥打我們的24小時(shí)值班經(jīng)理電話:15601064618或技術(shù)經(jīng)理的電話:13041036957,我們會(huì)在第一時(shí)間接聽(tīng)您的來(lái)電,為您提供適合的解決方案,讓您無(wú)論在家還是在企業(yè)都能無(wú)憂辦公。
那艾銻無(wú)限具體能為您的企業(yè)提供哪些服務(wù)呢?
艾銻無(wú)限始創(chuàng)于2005年,歷經(jīng)15年服務(wù)了5000多家中小企業(yè)并保障了幾十萬(wàn)臺(tái)設(shè)備的正常運(yùn)轉(zhuǎn),積累了豐富的企業(yè)IT緊急問(wèn)題和特殊故障的解決經(jīng)驗(yàn),制定了相對(duì)應(yīng)的解決方案。我們?yōu)槟钠髽I(yè)提供的IT服務(wù)分為三大版塊:
第一版塊是保障性IT外包服務(wù):如電腦設(shè)備運(yùn)維,辦公設(shè)備運(yùn)維,網(wǎng)絡(luò)設(shè)備運(yùn)維,服務(wù)器運(yùn)維等綜合性企業(yè)IT設(shè)備運(yùn)維服務(wù)。
第二版塊是功能性互聯(lián)網(wǎng)外包服務(wù):如網(wǎng)站開(kāi)發(fā)外包,小程序開(kāi)發(fā)外包,APP開(kāi)發(fā)外包,電商平臺(tái)開(kāi)發(fā)外包,業(yè)務(wù)系統(tǒng)的開(kāi)發(fā)外包和后期的運(yùn)維外包服務(wù)。
第三版塊是增值性云服務(wù)外包:如企業(yè)郵箱上云,企業(yè)網(wǎng)站上云,企業(yè)存儲(chǔ)上云,企業(yè)APP小程序上云,企業(yè)業(yè)務(wù)系統(tǒng)上云,阿里云產(chǎn)品等后續(xù)的云運(yùn)維外包服務(wù)。
您要了解更多服務(wù)也可以登錄艾銻無(wú)限的官網(wǎng):
www.bjitwx.com查看詳細(xì)說(shuō)明,
在疫情期間,您企業(yè)遇到的任何困境只要找到艾銻無(wú)限,能免費(fèi)為您提供服務(wù)的我們絕不收一分錢,我們?nèi)w艾銻人承諾此活動(dòng)直到中國(guó)疫情結(jié)束,我們將這次活動(dòng)稱為——春雷行動(dòng)。
以下還有我們?yōu)槟峁┑囊恍┘夹g(shù)資訊,以便可以幫助您更好的了解相關(guān)的IT知識(shí),幫您渡過(guò)疫情中辦公遇到的困難和挑戰(zhàn),艾銻無(wú)限愿和中國(guó)中小企業(yè)一起共進(jìn)退,因?yàn)槲覀兿嘈湃f(wàn)物同體,能量合一,只要我們一起齊心協(xié)力,一定會(huì)成功。再一次祝福您和您的企業(yè),戰(zhàn)勝疫情,您和您的企業(yè)一定行。
艾銻知識(shí) | mysql,redis數(shù)據(jù)備份方案
之前在文章里面有提到過(guò),很多事情,并沒(méi)有絕對(duì)的對(duì)錯(cuò),只是度的問(wèn)題。而度的衡量又取決于時(shí)、勢(shì)二字。所以當(dāng)形勢(shì)逼人的時(shí)候,基本就是這件事情非做不可的時(shí)候了。
先說(shuō)下背景,公司的服務(wù)器一直用的阿里云,包括mysql、redis也都是買了ECS自己搭建的。這里面有幾個(gè)原因:
創(chuàng)業(yè)的時(shí)候,阿里云只提供mysql的存儲(chǔ),redis的存儲(chǔ)還沒(méi)提供。
沒(méi)錢,即時(shí)現(xiàn)在去看redis的存儲(chǔ)價(jià)格也是貴的嚇人。
這樣自己來(lái)搞存儲(chǔ)有好處也有壞處。
好處:
完全可控,比如連接數(shù)限制,內(nèi)存限制,存儲(chǔ)限制。還有數(shù)據(jù)備份的靈活性等等。
強(qiáng)迫團(tuán)隊(duì)服務(wù)器研發(fā)要有存儲(chǔ)運(yùn)維能力。
省錢
壞處:
冷備、熱備方案不完善。
存儲(chǔ)運(yùn)維的成本較高,需要長(zhǎng)時(shí)間積累。
ok,問(wèn)題就是這樣,接下來(lái)再來(lái)說(shuō)一下我們之前的冷備和熱備方案。
可以說(shuō)極其簡(jiǎn)陋:
mysql、redis每天10點(diǎn)冷備,備份到本地磁盤(pán)和阿里云OSS
redis使用rdb落地,每60秒至少有1次寫(xiě)就會(huì)觸發(fā)落地。
這樣做的問(wèn)題其實(shí)挺多的,主要幾個(gè):
mysql dump的時(shí)候會(huì)導(dǎo)致游戲卡頓,即使加了 -single-transaction 參數(shù) 也僅僅是緩解
冷備頻率過(guò)低,真出現(xiàn)問(wèn)題數(shù)據(jù)已經(jīng)太久
沒(méi)有熱備,風(fēng)險(xiǎn)較大
針對(duì)這些問(wèn)題,我們先做了mysql備份的優(yōu)化。
mysql主從同步,實(shí)現(xiàn)熱備。
主機(jī)不再執(zhí)行mysqldump,從機(jī)上每隔10分鐘執(zhí)行一次mysqldump,并備份到本地磁盤(pán)和阿里云OSS
mysql的備份方案還是比較簡(jiǎn)單的,唯一要注意的是,從機(jī)啟動(dòng)的時(shí)候并不會(huì)從主機(jī)拉取所有數(shù)據(jù),所以需要停服先把主機(jī)的數(shù)據(jù)手動(dòng)同步到從機(jī),之后再啟動(dòng)同步。
接下來(lái),是redis的備份問(wèn)題。
為了與mysql的備份時(shí)間一致,redis這邊改成了主機(jī)每10分鐘備份rdb文件一次。
但新方案運(yùn)行了幾天之后,發(fā)現(xiàn)mysql經(jīng)常會(huì)突然響應(yīng)變慢。
后來(lái)發(fā)現(xiàn)因?yàn)閭浞菽_本的邏輯是會(huì)先把rdb文件copy一份出來(lái),而copy的目標(biāo)位置和mysql使用的磁盤(pán)是同一個(gè)磁盤(pán),所以導(dǎo)致磁盤(pán)IO上升,從而mysql變慢。
并且redis的bgsave每隔60秒運(yùn)行一次,也是會(huì)對(duì)磁盤(pán)有大量的寫(xiě)操作,不過(guò)目前看來(lái)影響不是特別大,因?yàn)閿?shù)據(jù)量比較小。
所以我們開(kāi)始考慮新的redis備份方案。
與mysql不同,redis從機(jī)在第一次啟動(dòng)的時(shí)候會(huì)從主機(jī)全量同步一次數(shù)據(jù)。
所以我們想了幾套方案,我分別列一下。
redis主從熱備,從機(jī)進(jìn)行冷備
這種方案其實(shí)是可以的,但是有幾個(gè)問(wèn)題:
如果主機(jī)不關(guān)閉rdb保存就沒(méi)有問(wèn)題,如果關(guān)閉了的話,那么當(dāng)主機(jī)不小心宕機(jī)重啟,那么當(dāng)主機(jī)redis啟動(dòng)之后,會(huì)把從機(jī)redis的數(shù)據(jù)也抹掉。十分危險(xiǎn)。
一旦從機(jī)服務(wù)器出問(wèn)題,重新啟動(dòng)后會(huì)從主機(jī)同步所有數(shù)據(jù),導(dǎo)致主機(jī)bgsave運(yùn)行,如果數(shù)據(jù)量很大,會(huì)導(dǎo)致主機(jī)內(nèi)存狂飆,如果主機(jī)又忘記配置內(nèi)存使用限制,就會(huì)是災(zāi)難了。這在云風(fēng)的一篇文章中有寫(xiě): 談?wù)勀澳盃?zhēng)霸在數(shù)據(jù)庫(kù)方面踩過(guò)的坑( Redis 篇)
所以后來(lái),我決定選擇一個(gè)比較簡(jiǎn)單的方案。
使用ssh將rdb文件傳輸?shù)搅硪慌_(tái)機(jī)器上,再進(jìn)行冷備。