麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種文本數據庫的容災修復方法及裝置與流程

文檔序號:11154733閱讀:441來源:國知局
一種文本數據庫的容災修復方法及裝置與制造工藝

本發明涉及數據庫存儲領域,具體而言,涉及一種文本數據庫的容災修復方法及裝置。



背景技術:

在目前的移動通信網管監控系統中,會大量的運用數據庫進行數據緩存。基于成本、易用性等多方面因素的考慮。目前系統使用開源的文本數據庫(FB、Sqlite)的方式已經非常普遍。文本數據庫具有體積小、資源占用少、操作維護簡單等便利,但是它的最大缺陷是數據庫在異常情況下的損壞后的恢復,由于沒有商業數據庫的比較成熟的數據恢復機制。往往數據庫損壞后,意味著數據的丟失。

在正常的數據庫損壞后的恢復中,都是需要人工進行干預的,通過人工的操作把之前備份的數據導入到事后數據庫中。這種處理的弊端很明顯:

1、無法在系統出現問題的第一時間就將數據進行恢復,特別是如果系統問題發生在無人值守的情況下,將大大延誤系統的解決。

2、人工的干預人為地降低了系統的可靠性,增加了故障的隱患。



技術實現要素:

本發明實施例提供了一種文本數據庫的修復方法及裝置,以至少解決相關技術中缺少針對文本數據庫損壞后能夠及時、自動和穩定的對數據庫修復的問題。

根據本發明的一個實施例,提供了一種文本數據庫的容災修復方法,包括:

檢測數據庫是否存在數據損壞;

若所述數據庫存在數據損壞,根據所述數據庫是否設置備份容災腳本對所述數據庫進行容災修復。

優選地,若所述數據庫設置了容災腳本,則采用最新備份庫和容災腳本的方式對所述數據庫進行容災修復;

若所述數據庫沒有設置容災腳本,則根據所述備份庫中的操作日志對所述數據庫進行容災修復。

優選地,根據所述備份庫生成時間,采集所述時間后的所有操作日志;

對所述操作日志進行處理,保留對所述數據庫修改的操作日志數據;

通過所述備份庫執行所述操作日志數據完成對所述數據庫的容災修復。

根據本發明的另一個實施例,提供了一種文本數據庫的容災修復的裝置,包括:

檢測模塊,用于檢測數據庫是否存在數據損壞;

修復模塊,用于在所述數據庫存在數據損壞時,根據所述數據庫是否設置備份容災腳本對所述數據庫進行容災修復。

優選地,若所述數據庫設置了容災腳本,則采用最新備份庫和容災腳本的方式對所述數據庫進行容災修復;

若所述數據庫沒有設置容災腳本,則根據所述備份庫中的操作日志對所述數據庫進行容災修復。

優選地,根據所述備份庫生成時間,采集所述時間后的所有操作日志;

對所述操作日志進行處理,保留對所述數據庫修改的操作日志數據;

通過所述備份庫執行所述操作日志數據完成對所述數據庫的容災修復。

有益效果:通過本發明的技術方案,在數據庫存在數據損壞時,根據所述數據庫是否設置備份容災腳本對所述數據庫進行容災修復,無需引入新的資源,在沒有大規模增加系統開銷的情況下,解決了現有技術中缺少針對文本數據庫的容災修復,并能使用系統自動、及時和穩定的對數據庫進行數據修復,大大提高了文本數據庫的可用性。

附圖說明

此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:

圖1是根據本發明實施例文本數據庫容災修復方法的示意圖;

圖2是根據本發明實施例文本數據庫容災修復方法的流程圖;

圖3是根據本發明實施例文本數據庫容災修復中間文件清理流程圖;

圖4是根據本發明實施例文本數據庫容災修復裝置的示意圖;

具體實施方式

下文中將參考附圖并結合實施例來詳細說明本發明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。

需要說明的是,本發明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區別類似的對象,而不必用于描述特定的順序或先后次序。

方法實施例

結合上述提到的問題,在本發明實施例中提供了一種文本數據庫容災修復方法,如圖1所示,該方法示意圖包括:

S101:檢測數據庫是否存在數據損壞;

S102:若所述數據庫存在數據損壞,根據所述數據庫是否設置備份容災腳本對所述數據庫進行容災修復。

可選地,若所述數據庫設置了容災腳本,則采用最新備份庫和容災腳本的方式對所述數據庫進行容災修復;

若所述數據庫沒有設置容災腳本,則根據所述備份庫中的操作日志對所述數據庫進行容災修復。

可選地,根據所述備份庫生成時間,采集所述時間后的所有操作日志;

對所述操作日志進行處理,保留對所述數據庫修改的操作日志數據;

通過所述備份庫執行所述操作日志數據完成對所述數據庫的容災修復。

通過上述方法步驟,數據庫系統能夠依據現有的數據備份規則找到近期的數據庫完整備份,并利用日志庫的時間排序查找到備份庫生成后用戶執行的命令,通過去除其中未對數據庫進行寫操作的查詢命令,生成一份增、刪、改操作的批命令數據。然后再將這些數據重新導入到文本數據庫中來保證數據庫數據的完整性和準確性。并且能夠通過告警的方式直接通過展示給運維任務,從而使運維人員能夠快速進行數據核對,保證數據的準確性。

本發明實施例提供了一種文本數據庫的容災修復方法的流程圖,如圖2所示,包括:

S201:進入數據庫巡檢,讀取知識庫內容,執行巡檢命令;

S202:返回結果是否正常;若正常,則進入S203;進異常則進入S204;

S203:流程結束;

S204:是否存在備份的腳本文件,若存在,則進入S206;若不存在,則進入S205;

S205:獲取最新備份庫生成時間;

S206:獲取最新備份庫,獲取備份腳本文件;

S207:執行腳本,結果導入數據庫中;

S208:生成新庫,計算數據庫文件校驗和;

S209:查詢操作日志庫,并導出文件;

S210:剔除查詢類命令,保留增刪改命令日志;

S211:將文件中的日志記錄導成批處理命令;

S212:執行批處理;

S213:和保存的文件校驗和進行比較;

S214:觸發告警。

本發明實施例提供了文本數據庫容災修復中間文件清理流程圖,如圖3所示,包括:

S301:接收用戶操作;

S302:是否導致數據變理(增刪改)操作;若否,則流程結束;若是,則進入S303;

S303:數據入庫操作;

S304:判斷入庫是否成功;若成功,則進入S305;進失敗,系統則提示錯誤;

S305:是否需要保存入庫腳本;若保存,則進入S306;若不保存,則入S307;

S306:將入庫腳本緩存文件;

S307:記錄操作日志;

數據庫系統在每次傳送后(保證網管服務器上的數據和前臺數據是一致的),都需要對現有文本數據庫進行保存,作為基礎數據恢復庫。在系統資源允許的情況下,配置成入庫腳本文件緩存機制。這樣每個入庫動作都將生成Sql腳本制動保存在緩存文件中。如果數據腳本無法緩存則通過操作日志中記錄的動作進行恢復。緩存文件在進行數據傳送后,作用就已經失去。因此數據傳送后需要刪除,后續的操作會生成新的緩存文件。

裝置實施例

該裝置用于實現上述實施例及優選實施方式,已經進行過說明的不再贅述。如以下所使用的,術語“模塊”可以實現預定功能的軟件和/或硬件的組合。盡管以下實施例所描述的裝置較佳地以軟件來實現,但是硬件,或者軟件和硬件的組合的實現也是可能并被構想的。

圖4是本發明實施例提供的一種文本數據庫容災修復的裝置,包括:

檢測模塊41:用于檢測數據庫是否存在數據損壞;

修復模塊42:用于在所述數據庫存在數據損壞時,根據所述數據庫是否設置備份容災腳本對所述數據庫進行容災修復。

可選地,若所述數據庫設置了容災腳本,則采用最新備份庫和容災腳本的方式對所述數據庫進行容災修復;

若所述數據庫沒有設置容災腳本,則根據所述備份庫中的操作日志對所述數據庫進行容災修復。

可選地,根據所述備份庫生成時間,采集所述時間后的所有操作日志;

對所述操作日志進行處理,保留對所述數據庫修改的操作日志數據;

通過所述備份庫執行所述操作日志數據完成對所述數據庫的容災修復。

上述裝置不限于存在于數據庫自身內部,只要能滿足檢測數據損壞以以及實現對數據庫的容災修復即可。

需要說明的是,上述各個模塊是可以通過軟件或硬件來實現的,對于后者,可以通過以下方式實現,但不限于此:上述模塊均位于同一處理器中;或者,上述各個模塊以任意組合的形式分別位于不同的處理器中。

另外本發明還提供一種存儲介質,用于執行上述方法。

顯然,本領域的技術人員應該明白,上述的本發明的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,并且在某些情況下,可以以不同于此處的順序執行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現。這樣,本發明不限制于任何特定的硬件和軟件結合。

以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 敖汉旗| 邵阳县| 锡林浩特市| 兴文县| 汉川市| 临沭县| 萍乡市| 安远县| 灵武市| 赤水市| 北宁市| 东源县| 双江| 胶南市| 香港| 麻栗坡县| 汾西县| 当阳市| 六盘水市| 历史| 舟山市| 兴文县| 雅安市| 鲜城| 浙江省| 桃江县| 白银市| 黑山县| 金华市| 安丘市| 郁南县| 冕宁县| 金昌市| 通江县| 兴安县| 辉县市| 武冈市| 屯留县| 依兰县| 镇赉县| 呼玛县|