[發明專利]一種實時數據庫備份恢復方法有效
| 申請號: | 201510210322.3 | 申請日: | 2015-04-28 |
| 公開(公告)號: | CN104850598B | 公開(公告)日: | 2017-11-14 |
| 發明(設計)人: | 史英杰;朱恒;粟勇;周淳 | 申請(專利權)人: | 江蘇瑞中數據股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F11/14 |
| 代理公司: | 南京知識律師事務所32207 | 代理人: | 汪旭東 |
| 地址: | 210003 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 數據庫 備份 恢復 方法 | ||
1.一種實時數據庫備份恢復方法,其特征在于:
所述實時數據庫備份恢復方法包括:數據庫停止運行狀態下的離線全量備份及其恢復,解決實時數據庫停止運行情況下的全量備份和全量恢復;數據庫正常運行狀態下的在線全量備份及其恢復,解決實時數據庫開啟并提供用戶查詢訪問的情況下的全量備份和全量恢復;增量備份及其恢復,解決實時數據庫開啟并提供正常服務的情況下,對新增加或新更新的物理文件進行備份及其恢復;
所述實時數據庫的數據存儲結構滿足:物理文件包括控制文件、緩存文件、索引文件、數據文件、日志文件;索引文件、數據文件無時間標識;數據文件中的數據結構包含文件頭和若干均勻大小的文件塊,每個文件塊中包含若干數據節點;
所述離線全量備份及其恢復包括如下步驟:
步驟A:停止正在運行的實時數據庫,依次拷貝物理文件至備份目錄;
步驟B:打開控制文件,讀取索引文件和數據文件列表,更新文件所在目錄為備份目錄;
步驟C:創建全量備份信息記錄文件,保存在全量備份目錄中;打開文件編號最大的數據文件,讀取出文件頭信息,根據該信息獲取數據庫最后一次分配文件塊的時間,將該時間與該文件的文件名、文件號、已寫數據的偏移位置寫入全量備份信息記錄文件中供增量備份使用;
步驟D:更新備份歷史記錄文件,記錄包括備份時間、備份類型及備份目錄的信息,備份結束;
步驟E:離線全量恢復時,由于離線全量備份出的物理文件本身就是完整的一套數據庫文件,因此直接使用全量備份目錄中的物理文件啟動數據庫。
2.根據權利要求1所述的實時數據庫備份恢復方法,其特征在于:所述在線全量備份及其恢復包括如下步驟:
步驟A:對實時數據庫加寫鎖,確保備份過程中無新數據處理,數據庫對外依然提供查詢業務;
步驟B:執行離線全量備份及其恢復方案的步驟B、C、D;
步驟C:對實時數據庫解寫鎖,恢復實時數據庫提交處理業務;
步驟D:同離線全量恢復一樣,在線全量恢復時,由于全量備份出的物理文件本 身就是完整的一套數據庫文件,因此直接使用全量備份目錄中的物理文件啟動數據庫。
3.根據權利要求1所述的實時數據庫備份恢復方法,其特征在于:所述增量備份包括如下步驟:
步驟A:獲取增量備份方式及開始、結束時間:提供三種增量備份方式:參數為結束時間endTime,即備份從上次備份時間點到endTime之間新近分配的所有文件塊;參數為天數N,即備份從上次備份時間點以后N天分配的所有文件塊;無參數,即備份從上次備份時間點到系統當前時間之間分配的所有文件塊;
步驟B:備份控制文件:創建增量備份目錄,以時間命名;將數據庫控制文件拷貝至增量備份目錄下;
步驟C:備份緩存文件:調用數據庫接口將緩存數據取出,寫入自定義格式的緩存文件中;
步驟D:備份日志文件:將數據庫日志文件拷貝至增量備份目錄下;
步驟E:備份增量數據文件:讀取備份信息記錄文件,獲取上次備份時記錄的最大文件號及偏移,從該位置開始順序讀取文件塊至備份結束時間,將讀取的文件塊寫入自定義格式數據文件中;
步驟F:創建增量備份信息記錄文件,保存在本次增量備份目錄中:打開文件編號最大的數據文件,讀取出文件頭信息,根據該信息獲取數據庫最后一次分配文件塊的時間,將該時間與該文件的文件名、文件號、已寫數據的偏移位置寫入增量備份信息記錄文件中供下次增量備份使用;
步驟G:更新備份歷史記錄文件,記錄包括備份時間、備份類型及備份目錄的信息,備份結束。
4.根據權利要求1所述的實時數據庫備份恢復方法,其特征在于:所述增量恢復包括如下步驟:
步驟A:通過輸入參數獲取恢復時間點,順序查找增量備份目錄,選擇小于等于恢復時間點的所有增量備份目錄以及全量備份目錄作為恢復使用目錄;
步驟B:以增量備份目錄n下的控制文件F1為基礎,其中,1≤n≤N,N為步驟A獲取的增量備份目錄個數,通過比較全備目錄下的控制文件F2進行調整,如果F1中的測點在F2中存在,則調整該測點是根節點為F2中對應的根節點指針, 便于連接全量備份數據;如果F1中的測點在F2中不存在,則說明該測點為新增測點,將其根節點指針置為0,便于后續數據添加;如果F2中的測點在F1中不存在,則說明該測點被刪除,刪除該測點數據;使最終生成的控制文件F3為恢復時間點A時刻的控制文件;
步驟C:以步驟B生成的控制文件和全備目錄中的數據、索引文件為基準,臨時啟動數據庫DB_T;
步驟D:讀取增量備份目錄n下的自定義格式緩存文件,其中,1≤n≤N,N為步驟A獲取的增量備份目錄個數,按序回寫至DB_T;
步驟E:讀取增量備份目錄n下的自定義格式數據文件,其中,1≤n≤N,N為步驟A獲取的增量備份目錄個數,按序回寫至DB_T;
步驟F:讀取增量備份目錄n的日志文件,其中,1≤n≤N,N為步驟A獲取的增量備份目錄個數,獲取其中的刪除數據信息,刪除DB_T中的數據;
步驟G:遞歸至步驟B,實現全部增量目錄的文件恢復,關閉數據庫DB_T。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于江蘇瑞中數據股份有限公司,未經江蘇瑞中數據股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510210322.3/1.html,轉載請聲明來源鉆瓜專利網。





