為什么要備份數(shù)據(jù)庫?
我認為這個問題的答案已經(jīng)很明顯了。因此,我不想回答這個問題,而是想回答另一個問題:通過數(shù)據(jù)庫備份可以預(yù)防哪些風險?實際上,自產(chǎn)生以來,數(shù)據(jù)始終伴隨著自然災(zāi)害,電源故障,網(wǎng)絡(luò)故障,硬件故障,軟件故障和人為故障導致數(shù)據(jù)丟失的風險。
關(guān)鍵是,即使您的數(shù)據(jù)庫從今天的硬件錯誤,明天的閃電或明天的第二天掉電中幸存下來,也可能由于從今天起三天的失誤而錯誤地刪除了數(shù)據(jù)。
數(shù)據(jù)庫備份帶來哪些挑戰(zhàn)?
第一個挑戰(zhàn)是盤點數(shù)據(jù)庫資產(chǎn)。對于單個用戶,所有這些數(shù)據(jù)庫資產(chǎn)可能只是一個實例,即使沒有盤點,用戶也清楚地知道這些資產(chǎn)。但是,對于企業(yè)用戶,尤其是大型企業(yè)的用戶,由于業(yè)務(wù)多樣性,免備案主機,數(shù)據(jù)庫可以具有多個實例和各種數(shù)據(jù)庫類型。在這種情況下,運維人員需要清楚地了解不同數(shù)據(jù)庫的數(shù)量,分布,類型(生產(chǎn)或核心數(shù)據(jù)庫)和功能。
第二個挑戰(zhàn)是對備份系統(tǒng)的評估。盡管備份是日常的基本操作,但人們通常會發(fā)現(xiàn)備份在緊縮時期沒有幫助。原因是備份作為一項基本任務(wù)不會促進業(yè)務(wù)發(fā)展,只要沒有問題發(fā)生,很少有人會記住它。但是,一旦出現(xiàn)問題,備份立即成為公眾關(guān)注的目標。在緊急情況下,備份通常無濟于事,主要是因為人們對備份的重視程度不夠,因此對備份的投資不足。許多企業(yè)聲稱備份是頭等大事,但從未正確實施它們。
我建議您立即詢問您的技術(shù)團隊:您的備份系統(tǒng)真的有效嗎?
什么是有效的備份系統(tǒng)?
可以將不同的數(shù)據(jù)庫用于不同的目的,并且備份系統(tǒng)的有效性也會相應(yīng)變化。根據(jù)其功能,數(shù)據(jù)庫可以分為測試數(shù)據(jù)庫,免備案主機,生產(chǎn)數(shù)據(jù)庫和核心數(shù)據(jù)庫。
對于測試數(shù)據(jù)庫,您必須根據(jù)其預(yù)期用途來了解數(shù)據(jù)庫的重要性。如果測試數(shù)據(jù)庫用于個人測試,則在大多數(shù)情況下,無需備份即可導入和清除數(shù)據(jù)。如果將測試數(shù)據(jù)庫用于研發(fā),建議您啟用備份功能,并且不要低估備份的重要性。這是因為企業(yè)中的所有開發(fā)和測試人員都在測試數(shù)據(jù)庫上工作,并且單個數(shù)據(jù)問題可能立即給整個團隊造成麻煩。此外,測試數(shù)據(jù)庫可能比生產(chǎn)數(shù)據(jù)庫遇到更多的問題。
對于生產(chǎn)數(shù)據(jù)庫,首先,請確保已啟用備份功能。然后,評估備份周期是否滿足要求,例如每天進行完全備份。發(fā)生故障時,最多只會丟失一天的新數(shù)據(jù)。在這種情況下,您需要檢查備份數(shù)據(jù)的最后副本是否已還原以及備份數(shù)據(jù)是否有效。
對于核心數(shù)據(jù)庫,其重要性高于測試或生產(chǎn)數(shù)據(jù)庫。除上述措施外,您還需要采取其他措施。實時備份已成為企業(yè)選擇數(shù)據(jù)庫備份解決方案的必選選項,因為它可以很大程度地減少因故障而丟失的數(shù)據(jù)量。快速恢復(fù)對核心數(shù)據(jù)庫也起著越來越重要的作用。根據(jù)潛在故障的風險,您可以選擇優(yōu)秀的恢復(fù)解決方案,在整個備份和恢復(fù)系統(tǒng)上進行常規(guī)鉆取,并采樣備份數(shù)據(jù)以測試恢復(fù)功能。我建議您制定一個策略,該策略可以自動,定期執(zhí)行整個恢復(fù)過程并提供鉆取報告。
筆記:
1.不驗證備份數(shù)據(jù)的有效性甚至比不備份數(shù)據(jù)還要糟糕。想象一下,您的所有業(yè)務(wù)數(shù)據(jù)在災(zāi)難中已被完全破壞。但是,當您要恢復(fù)數(shù)據(jù)時,您可能會發(fā)現(xiàn)備份數(shù)據(jù)已損壞,備份的文件不正確或發(fā)生了其他可怕的事情。在這種情況下,您該怎么辦?沒有驗證的數(shù)據(jù)備份解決方案可能會帶來更大的災(zāi)難。您必須驗證備份內(nèi)容,以確保已正確備份數(shù)據(jù)并可以將其用于恢復(fù)。不要等到為時已晚。
2.不要堅持大型而全面的解決方案。各種解決方案必須滿足多樣化的要求。特別是對于核心數(shù)據(jù)庫,必須定期備份整個實例,以防止硬件故障和實例損壞。此外,必須實時備份每個表,這通??梢詫㈥P(guān)鍵時刻的數(shù)據(jù)恢復(fù)時間減少多達90%。
3.手動或自動數(shù)據(jù)驗證均旨在驗證用于恢復(fù)的備份數(shù)據(jù)(也稱為恢復(fù)數(shù)據(jù))的有效性。驗證恢復(fù)數(shù)據(jù)的完整性非常具有挑戰(zhàn)性。在大多數(shù)情況下,會根據(jù)業(yè)務(wù)特征對恢復(fù)數(shù)據(jù)和生產(chǎn)數(shù)據(jù)進行采樣并進行比較。或者,恢復(fù)數(shù)據(jù)庫用作輔助數(shù)據(jù)庫,并與主數(shù)據(jù)庫同步以驗證數(shù)據(jù)完整性。