資料庫備份方法及裝置製造方法
2023-04-25 05:59:36
資料庫備份方法及裝置製造方法
【專利摘要】本發明公開了一種資料庫備份方法及裝置。其中,該方法包括:讀取需要備份的源資料庫的容量大小;將源資料庫的容量大小和預先設定的閾值進行比較,確定源資料庫所採用的備份方式,其中,備份方式至少包括:定時備份、實時備份;使用備份方式將源資料庫中的內容備份至目標位置。本發明解決了現有技術中對大量資料庫進行備份所採用的方法無法進行完整備份的問題。
【專利說明】資料庫備份方法及裝置
【技術領域】
[0001]本發明涉及計算機領域,具體而言,涉及一種資料庫備份方法及裝置。
【背景技術】
[0002]在計算機領域,備份是指為了防止計算機數據因計算機故障、病毒、人為因素等原因而造成的數據丟失及損壞,從而對原始數據進行複製或拷貝進行單獨存儲,通過原始數據的備份副本可以提供在數據丟失或故障後的數據恢復的一種技術手段。
[0003]當前對數據的備份方式主要有兩種,分別是定時備份和實時備份。定時備份通常都是根據預先設置的備份策略自動執行備份,又叫計劃備份,而兩個備份計劃之間的時間間隔,則叫備份窗口。實時備份是指對數據進行自動監控,連續捕獲和備份數據變化,只要數據發生變化,便實時、準確的備份下來,數據安全性更高。
[0004]大型的資料庫(例如超過200GB),如果每次要進行全備份,由於網絡和磁碟速度的限制,所需要的備份時間過於冗長,有時一天都無法完成。而使用實時備份的方法對資料庫進行備份時,當對多個資料庫容量較小的資料庫進行備份時,系統負荷較大,影響資料庫的讀取速度。
[0005]針對現有技術中對大量資料庫進行備份所採用的方法無法進行完整備份的問題,目前尚未提出有效的解決方案。
【發明內容】
[0006]本發明的主要目的在於提供一種資料庫備份方法及裝置,以解決現有技術中對大量資料庫進行備份所採用的方法無法進行完整備份的問題。
[0007]為了實現上述目的,根據本發明實施例的一個方面,提供了一種資料庫備份方法。該方法包括:讀取需要備份的源資料庫的容量大小;將源資料庫的容量大小和預先設定的閾值進行比較,確定源資料庫所採用的備份方式,其中,備份方式至少包括:定時備份、實時備份;使用備份方式將源資料庫中的內容備份至目標位置。
[0008]為了實現上述目的,根據本發明實施例的另一方面,提供了一種資料庫備份裝置,該裝置包括讀取模塊,用於讀取需要備份的源資料庫的容量大小;確定模塊,用於將源資料庫的容量大小和預先設定的閾值進行比較,確定源資料庫所採用的備份方式,其中,備份方式至少包括:定時備份、實時備份;第一備份模塊,用於使用備份方式將源資料庫中的內容備份至目標位置。
[0009]根據發明實施例,通過讀取需要備份的源資料庫的容量大小;將源資料庫的容量大小和預先設定的閾值進行比較,確定源資料庫所採用的備份方式,其中,備份方式至少包括:定時備份、實時備份;使用備份方式將源資料庫中的內容備份至目標位置,解決了現有技術中對大量資料庫進行備份所採用的方法無法進行完整備份的問題。實現了根據不同情況和業務需要對各種資料庫進行實時或定時備份,既保證了備份速度,又平衡了系統負載的效果。
【專利附圖】
【附圖說明】
[0010]構成本申請的一部分的附圖用來提供對本發明的進一步理解,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中:
[0011]圖1是根據本發明實施例一的資料庫備份方法的流程圖;
[0012]圖2是根據本發明實施例的對源資料庫大小判斷的流程框圖;
[0013]圖3是根據本發明實施例一可選的的資料庫備份方法的流程圖;
[0014]圖4是根據本發明實施例的對第二備份資料庫進行定時備份的結構示意圖;
[0015]圖5是根據本發明實施例二的資料庫備份裝置的結構示意圖;以及
[0016]圖6是根據本發明實施例二可選的的資料庫備份裝置的結構示意圖。
【具體實施方式】
[0017]需要說明的是,在不衝突的情況下,本申請中的實施例及實施例中的特徵可以相互組合。下面將參考附圖並結合實施例來詳細說明本發明。
[0018]為了使本【技術領域】的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。
[0019]需要說明的是,本發明的說明書和權利要求書及上述附圖中的術語「第一」、「第二」等是用於區別類似的對象,而不必用於描述特定的順序或先後次序。應該理解這樣使用的數據在適當情況下可以互換,以便這裡描述的本發明的實施例。此外,術語「包括」和「具有」以及他們的任何變形,意圖在於覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限於清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對於這些過程、方法、產品或設備固有的其它步驟或單元。
[0020]實施例1
[0021 ] 本發明實施例提供了一種資料庫備份方法。
[0022]圖1是根據本發明實施例的資料庫備份方法的流程圖。如圖1所示,該方法包括步驟如下:
[0023]步驟S101,讀取需要備份的源資料庫的容量大小。
[0024]具體的,上述步驟SlOl中,對需要備份的源資料庫進行讀取,獲取源資料庫的容量信息。
[0025]步驟S103,將源資料庫的容量大小和預先設定的閾值進行比較,確定源資料庫所採用的備份方式,其中,備份方式至少包括:定時備份、實時備份。
[0026]具體的,上述步驟S103中,對源資料庫的本分方式包括定時備份和實時備份。根據對源資料庫的容量信息和預先設置的閾值,對備份方式進行選擇。其中,預先設置的閾值是對源資料庫容量大小進行的限定。
[0027]步驟S105,使用備份方式將源資料庫中的內容備份至目標位置。
[0028]具體的,上述步驟S105中,通過步驟S103的判斷,按照判斷結果對源資料庫進行備份。
[0029]上述步驟SlOl至步驟S105中,通過對源資料庫容量大小的獲取,將獲取到的源資料庫容量大小與預先設置的閾值進行比較。當源資料庫容量小於等於預先設置的閾值時,採用定時備份的方法對源資料庫進行備份;當資料庫容量大於預先設置的閾值時,採用實時備份的方法對源資料庫進行備份。
[0030]在實際應用當中,以SQL Server資料庫為例。該發明實施例改變了現有備份資料庫備份的架構,在生產環境和備份接口之間增加了一層同步的資料庫。實時備份主要是針對文件較大的資料庫文件難以備份的問題,提出的解決方案。如果資料庫較小,可以直接進新資料庫的完整備份。如圖2所述,具體判斷過程為:設置閾值,獲取資料庫大小,根據閾值和資料庫大小判斷模塊進行判斷。
[0031]其中,閾值的默認值設置為6GByte。設置閾值的默認值為6GByte的原因是:當前主流的網卡帶寬為1000Mbit,那麼傳輸6GByte的時間在是I分鐘左右,對於線上環境通常可以接受的數據的備份時間最長為2分鐘。如果在其他應用環境中,也可以根據能夠業務的不同對閾值進行相應的調整。
[0032]獲取資料庫容量大小的方法,可以通過資料庫自帶的存儲過程Exec sp_spaceused,獲取資料庫的文件大小,得到以下的表1所示的結果:
[0033]表1
[0034]
【權利要求】
1.一種資料庫備份方法,其特徵在於,包括: 讀取需要備份的源資料庫的容量大小; 將所述源資料庫的容量大小和預先設定的閾值進行比較,確定所述源資料庫所採用的備份方式,其中,所述備份方式至少包括:定時備份、實時備份; 使用所述備份方式將所述源資料庫中的內容備份至目標位置。
2.根據權利要求1所述的方法,其特徵在於,將所述源資料庫的容量大小和預先設定的閾值進行比較,確定所述源資料庫所採用的備份方式的方法包括: 判斷所述源資料庫容量是否小於等於所述閾值; 當所述源資料庫容量小於等於所述閾值時,對所述源資料庫進行所述定時備份; 當所述源資料庫容量大於所述閾值時,對所述源資料庫進行所述實時備份。
3.根據權利要求2所述的方法,其特徵在於,對所述源資料庫進行所述定時備份的方法包括: 讀取預先設定的所述定時備份所採用的第一時間間隔; 將所述源資料庫按照所述第一時間間隔所確定的備份頻率備份至第一備份資料庫。
4.根據權利要求2所述的方法,其特徵在於,對所述源資料庫進行實時備份的方法包括: 創建第二備份資料庫,所述第二備份資料庫用於實時對所述源資料庫進行備份; 通過所述源資料庫內容和所述第二備份資料庫內容的比對,判斷所述源資料庫內容是否發生變化; 當所述源資料庫內容發生變化時,發送實時備份信息; 根據所述實時備份信息,對所述源資料庫進行實時備份。
5.根據權利要求4所述的方法,其特徵在於,所述實時備份信息至少包括如下信息之一:所述源資料庫發生變化的內容位置信息、所述源資料庫發生變化的內容容量信息。
6.根據權利要求5中所述的方法,其特徵在於,在使用所述備份方式將所述源資料庫中的內容備份至目標位置之後,所述方法還包括: 備份所述第二備份資料庫至所述第一備份資料庫。
7.根據權利要求6中所述的方法,其特徵在於,備份所述第二備份資料庫至所述第一備份資料庫的方法包括: 讀取預先設定的所述定時備份所採用的第二時間間隔,所述第二時間間隔用於確定所述第二備份資料庫備份至所述第一備份資料庫的時間間隔; 將所述源資料庫按照所述第二時間間隔所確定的備份頻率備份所述第二備份資料庫至所述第一備份資料庫。
8.一種資料庫備份裝置,其特徵在於,包括: 讀取模塊,用於讀取需要備份的源資料庫的容量大小; 確定模塊,用於將所述源資料庫的容量大小和預先設定的閾值進行比較,確定所述源資料庫所採用的備份方式,其中,所述備份方式至少包括:定時備份、實時備份; 第一備份模塊,用於使用所述備份方式將所述源資料庫中的內容備份至目標位置。
9.根據權利要求8所述的裝置,其特徵在於,所述確定模塊還包括: 判斷模塊,用於判斷所述源資料庫容量是否小於等於所述閾值; 定時備份模塊,用於當所述源資料庫容量小於等於所述閾值時,對所述源資料庫進行所述定時備份; 實時備份模塊,用於當所述源資料庫容量大於所述閾值時,對所述源資料庫進行所述實時備份。
10.根據權利要求9所述的裝置,其特徵在於,所述定時備份模塊還包括: 第一子讀取模塊,用於讀取預先設定的所述定時備份所採用的第一時間間隔; 第一子定時備份模塊,用於將所述源資料庫按照所述第一時間間隔所確定的備份頻率備份至第一備份資料庫。
11.根據權利要求9所述的裝置,其特徵在於,所述實時備份模塊還包括: 創建模塊,用於創建第二備份資料庫,所述第二備份資料庫用於實時對所述源資料庫進行備份; 子判斷模塊,用於通過所述源資料庫內容和所述第二備份資料庫內容的比對,判斷所述源資料庫內容是否發生變化; 通知模塊,用於當所述源資料庫內容發生變化時,發送實時備份信息; 子實時備份模塊,用於根據所述實時備份信息,對所述源資料庫進行實時備份。
12.根據權利要求11中所述的裝置,其特徵在於,所述裝置還包括: 第二備份模塊,用於備份所述第二備份資料庫至所述第一備份資料庫。
13.根據權利要求12中所述的裝置,其特徵在於,所述第二備份模塊包括: 第二子讀取模塊,用於讀取預先設定的所述定時備份所採用的第二時間間隔,所述第二時間間隔用於確定所述第二備份資料庫備份至所述第一備份資料庫的時間間隔; 第二子定時備份模塊,用於將所述源資料庫按照所述第二時間間隔所確定的備份頻率備份所述第二備份資料庫至所述第一備份資料庫。
【文檔編號】G06F11/14GK104182302SQ201410470079
【公開日】2014年12月3日 申請日期:2014年9月15日 優先權日:2014年9月15日
【發明者】戴飛, 劉凱 申請人:北京國雙科技有限公司