最近爐石傳說的數(shù)據(jù)庫故障在業(yè)界傳得沸沸揚(yáng)揚(yáng)。無論故障起因是掉電宕機(jī)還是人為失誤,最終的影響是極其惡劣的,造成了無法挽回的數(shù)據(jù)丟失。對于越是大規(guī)模的數(shù)據(jù)庫系統(tǒng),如何設(shè)計(jì)一個(gè)可靠的備份系統(tǒng)越是至關(guān)重要。
大型數(shù)據(jù)備份系統(tǒng)設(shè)計(jì)備案策略
1.如何根據(jù)業(yè)務(wù)類型選擇備份方式,邏輯備份or物理備份?
3.如何確認(rèn)備份是否成功,哪一步驟出了問題
5.需要恢復(fù)時(shí),如何做到一鍵恢復(fù)到指定時(shí)間點(diǎn)
再比如mysqldump邏輯備份時(shí)沒有考慮到部分表采用utf8mb4字符集,導(dǎo)致恢復(fù)后的數(shù)據(jù)庫亂碼情況等。以UDB為例,大型備份系統(tǒng)主要從以下幾個(gè)方面確保備份安全性:
1.備份失敗監(jiān)控,一旦備份失敗就會發(fā)送告警信息
3.備份上傳前后的MD5校驗(yàn)
5.備份周期選擇上確保兩次間隔的binlog未過期
7.備份機(jī)集群空間檢測和負(fù)載均衡,確??臻g富余
其中,備份的有效性測試方法大概是這樣的:啟幾個(gè)對應(yīng)版本的數(shù)據(jù)庫并行測試,通過備份詳細(xì)記錄表獲取備份后將其傳送到這幾個(gè)實(shí)例進(jìn)行恢復(fù)測試。
備份過程的全局讀鎖檢測,是因?yàn)閭浞葸^程中為了記錄當(dāng)前的pos點(diǎn)信息,都會執(zhí)行一個(gè)flush tables with read lock的操作,但是如果當(dāng)時(shí)有長SQL未執(zhí)行完就會導(dǎo)致全局鎖等待,從而阻塞后續(xù)的所有寫請求。
這些備份的常規(guī)檢測都會在備份系統(tǒng)后臺定期全自動(dòng)執(zhí)行,保證了備份的成功率。
這種情況下由于無法獲取最實(shí)時(shí)的binlog,僅僅通過歷史備份只能恢復(fù)到備份時(shí)間點(diǎn),而無法恢復(fù)到故障前的時(shí)間點(diǎn)。
UDB出于客戶配置靈活,經(jīng)濟(jì)成本的考慮,既支持只創(chuàng)建單實(shí)例RDS,也可以創(chuàng)建高可用RDS和跨機(jī)房的master-slave RDS,對于重要的業(yè)務(wù),一般都建議至少配置有備庫。
有效的備份和恢復(fù)策略對于數(shù)據(jù)庫安全的重要性不言而喻,而海量數(shù)據(jù)庫的備份系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)卻不是那么簡單的一件事,需要考慮的細(xì)節(jié)還有很多。
希望本文對于有意研發(fā)海量DB備份系統(tǒng)的童鞋有一些幫助。沒有意向自研的童鞋,不妨考慮將數(shù)據(jù)庫遷移上云,讓強(qiáng)大的云數(shù)據(jù)庫為您的數(shù)據(jù)保駕護(hù)航。
網(wǎng)站題目:從爐石傳說數(shù)據(jù)庫故障看數(shù)據(jù)備份策略
文章地址:http://muchs.cn/news12/105462.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、手機(jī)網(wǎng)站建設(shè)、App開發(fā)、域名注冊、微信小程序、網(wǎng)站導(dǎo)航
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源:
創(chuàng)新互聯(lián)