亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

數(shù)據(jù)庫快照同步處理方法及裝置制造方法

文檔序號:6637428閱讀:318來源:國知局
數(shù)據(jù)庫快照同步處理方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種數(shù)據(jù)庫快照同步處理方法及裝置。該方法包括:確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫;根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件;確定腳本文件中需要?jiǎng)h除的腳本代碼;對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。通過本發(fā)明,解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫快照同步處理速度慢的問題。
【專利說明】數(shù)據(jù)庫快照同步處理方法及裝置

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,具體而言,涉及一種數(shù)據(jù)庫快照同步處理方法及裝置。

【背景技術(shù)】
[0002]隨著大數(shù)據(jù)時(shí)代的來臨,數(shù)據(jù)庫的高可用性變得日益重要。然而在采用結(jié)構(gòu)化查詢語言的結(jié)構(gòu)化查詢語言系統(tǒng)(Structured Query Language Server,簡稱為SQL Server)中數(shù)據(jù)庫復(fù)制技術(shù)是高可用性的一種方案。當(dāng)源數(shù)據(jù)庫變得不可用時(shí),目標(biāo)數(shù)據(jù)庫將作為后備數(shù)據(jù)庫,繼續(xù)維持正常的系統(tǒng)運(yùn)作。為了目標(biāo)數(shù)據(jù)庫能作為后備數(shù)據(jù)庫,需要將源數(shù)據(jù)庫做成一個(gè)數(shù)據(jù)庫快照(snapshot)并將該數(shù)據(jù)庫快照內(nèi)容同步到目標(biāo)數(shù)據(jù)庫上去。
[0003]在數(shù)據(jù)庫復(fù)制技術(shù)的執(zhí)行過程中,需要初始化目標(biāo)數(shù)據(jù)庫。初始化目標(biāo)數(shù)據(jù)庫分為兩個(gè)步驟,即,生成源數(shù)據(jù)庫快照的步驟和將該數(shù)據(jù)庫快照同步到目標(biāo)數(shù)據(jù)庫的步驟。然而在數(shù)據(jù)庫快照同步的過程中,處理速度比較慢,耗時(shí)較長。
[0004]針對現(xiàn)有技術(shù)中數(shù)據(jù)庫快照同步處理速度慢的問題,目前尚未提出有效的解決方案。


【發(fā)明內(nèi)容】

[0005]本發(fā)明的主要目的在于提供一種數(shù)據(jù)庫快照同步處理方法及裝置,以解決現(xiàn)有技術(shù)中數(shù)據(jù)庫快照同步處理速度慢的問題。
[0006]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種數(shù)據(jù)庫快照同步處理方法。
[0007]根據(jù)本發(fā)明的數(shù)據(jù)庫快照同步處理方法包括:確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫;根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件;確定腳本文件中需要?jiǎng)h除的腳本代碼;對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;以及通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。
[0008]進(jìn)一步地,對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件包括:獲取刪除指令,其中,刪除指令為用于刪除腳本文件中需要?jiǎng)h除的腳本代碼的指令;根據(jù)刪除指令對腳本文件中需要?jiǎng)h除的腳本代碼執(zhí)行刪除操作,得到修改后的腳本文件的腳本代碼;獲取寫入指令,其中,寫入指令用于將修改后的腳本文件的腳本代碼寫入腳本文件中;以及根據(jù)寫入指令將修改后的腳本文件的腳本代碼寫入腳本文件中,得到修改后的腳本文件。
[0009]進(jìn)一步地,在得到修改后的腳本文件之后,該方法還包括:獲取覆蓋指令,其中,覆蓋指令為用于將修改后的腳本文件的腳本代碼覆蓋腳本文件的腳本代碼的指令;以及根據(jù)覆蓋指令,將修改后的腳本文件的腳本代碼覆蓋修改前腳本文件的腳本代碼。
[0010]進(jìn)一步地,根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照包括:獲取第一預(yù)設(shè)代理程序,其中,第一預(yù)設(shè)代理程序?yàn)橛糜谏蓴?shù)據(jù)庫快照的程序;根據(jù)第一預(yù)設(shè)代理程序得到生成指令,其中,生成指令為用于執(zhí)行生成數(shù)據(jù)庫快照操作的指令;以及根據(jù)生成指令生成數(shù)據(jù)庫快照。
[0011]進(jìn)一步地,通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理包括:獲取第二預(yù)設(shè)代理程序,其中,第二預(yù)設(shè)代理程序?yàn)橛糜谕綌?shù)據(jù)庫快照的程序;根據(jù)第二預(yù)設(shè)代理程序,得到同步指令,其中,同步指令為用于執(zhí)行同步數(shù)據(jù)庫快照操作的指令;以及根據(jù)同步指令將修改后的數(shù)據(jù)庫快照同步至目標(biāo)數(shù)據(jù)庫。
[0012]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)庫快照同步處理裝置。
[0013]根據(jù)本發(fā)明的數(shù)據(jù)庫快照同步處理裝置包括:第一確定單元,用于確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫;生成單元,用于根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件;第二確定單元,用于確定腳本文件中需要?jiǎng)h除的腳本代碼;修改單元,用于對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;以及同步單元,用于通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。
[0014]進(jìn)一步地,修改單元包括:第一獲取模塊,用于獲取刪除指令,其中,刪除指令為用于刪除腳本文件中需要?jiǎng)h除的腳本代碼的指令;刪除模塊,用于根據(jù)刪除指令對腳本文件中需要?jiǎng)h除的腳本代碼執(zhí)行刪除操作,得到修改后的腳本文件的腳本代碼;第二獲取模塊,用于獲取寫入指令,其中,寫入指令用于將修改后的腳本文件的腳本代碼寫入腳本文件中;以及寫入模塊,用于寫入指令將修改后的腳本文件的腳本代碼寫入腳本文件中,得到修改后的腳本文件。
[0015]進(jìn)一步地,該裝置還包括:第三獲取模塊,用于獲取覆蓋指令,其中,覆蓋指令為用于將修改后的腳本文件的腳本代碼覆蓋腳本文件的腳本代碼的指令;以及覆蓋模塊,用于根據(jù)覆蓋指令,將修改后的腳本文件的腳本代碼覆蓋修改前腳本文件的腳本代碼。
[0016]進(jìn)一步地,生成單元包括:第四獲取模塊,用于獲取第一預(yù)設(shè)代理程序,其中,第一預(yù)設(shè)代理程序?yàn)橛糜谏蓴?shù)據(jù)庫快照的程序;第五獲取模塊,用于第一預(yù)設(shè)代理程序得到生成指令,其中,生成指令為用于執(zhí)行生成數(shù)據(jù)庫快照操作的指令;以及生成模塊,用于生成指令生成數(shù)據(jù)庫快照。
[0017]進(jìn)一步地,同步單元包括:第六獲取模塊,用于獲取第二預(yù)設(shè)代理程序,其中,第二預(yù)設(shè)代理程序?yàn)橛糜谕綌?shù)據(jù)庫快照的程序;第七獲取模塊,用于第二預(yù)設(shè)代理程序,得到同步指令,其中,同步指令為用于執(zhí)行同步數(shù)據(jù)庫快照操作的指令;以及同步模塊,用于同步指令將修改后的數(shù)據(jù)庫快照同步至目標(biāo)數(shù)據(jù)庫。
[0018]對于上述數(shù)據(jù)庫快照同步處理方法,通過確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫;根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件;確定腳本文件中需要?jiǎng)h除的腳本代碼;對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理,解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫快照同步處理速度慢的問題,有效地提升了數(shù)據(jù)庫快照同步處理速度。

【專利附圖】

【附圖說明】
[0019]構(gòu)成本申請的一部分的附圖用來提供對本發(fā)明的進(jìn)一步理解,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0020]圖1是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)庫快照同步處理方法的流程圖;
[0021]圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)庫快照同步處理方法對腳本文件進(jìn)行修改的示意圖;以及
[0022]圖3是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)庫快照同步處理裝置的示意圖。

【具體實(shí)施方式】
[0023]需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。
[0024]為了使本【技術(shù)領(lǐng)域】的人員更好地理解本申請方案,下面將結(jié)合本申請實(shí)施例中的附圖,對本申請實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請一部分的實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請保護(hù)的范圍。
[0025]需要說明的是,本申請的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請的實(shí)施例。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
[0026]圖1是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)庫快照同步處理方法的流程圖。如圖1所示,該方法包括如下的步驟SlOl至步驟S105:
[0027]步驟SlOI,確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫。
[0028]在源數(shù)據(jù)庫中確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫。源數(shù)據(jù)庫為發(fā)布數(shù)據(jù)庫,目標(biāo)數(shù)據(jù)庫為訂閱者數(shù)據(jù)庫。將發(fā)布數(shù)據(jù)庫中的數(shù)據(jù)同步至訂閱者數(shù)據(jù)庫中,當(dāng)發(fā)布數(shù)據(jù)庫不可用時(shí),訂閱者數(shù)據(jù)庫可作為后備數(shù)據(jù)庫維持系統(tǒng)正常運(yùn)行。在本發(fā)明中,源數(shù)據(jù)庫優(yōu)選為SQLServer數(shù)據(jù)庫,即在SQL Server數(shù)據(jù)庫中確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫。
[0029]步驟S102,根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照。
[0030]根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是源數(shù)據(jù)庫的只讀靜態(tài)視圖。優(yōu)選地,源據(jù)庫為SQL Server數(shù)據(jù)庫。生成數(shù)據(jù)庫快照之后,數(shù)據(jù)庫快照在事務(wù)上與源數(shù)據(jù)庫一致。在本發(fā)明實(shí)施例中的數(shù)據(jù)庫快照用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫。
[0031]在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件。
[0032]具體地,獲取第一預(yù)設(shè)代理程序,其中,第一預(yù)設(shè)代理程序?yàn)橛糜谏蓴?shù)據(jù)庫快照的程序;根據(jù)第一預(yù)設(shè)代理程序得到生成指令,其中,生成指令為用于執(zhí)行生成數(shù)據(jù)庫快照操作的指令;以及根據(jù)生成指令生成數(shù)據(jù)庫快照。
[0033]優(yōu)選地,源數(shù)據(jù)庫為SQL Server數(shù)據(jù)庫,獲取用于生成數(shù)據(jù)庫快照的第一預(yù)設(shè)代理程序?yàn)镾QL Server目錄下的snapshot, exe代理程序,根據(jù)SQL Server目錄下的snapshot, exe代理程序得到生成指令,根據(jù)生成指令生成數(shù)據(jù)庫快照。
[0034]步驟S103,確定腳本文件中需要?jiǎng)h除的腳本代碼。
[0035]當(dāng)源數(shù)據(jù)庫為SQL Server數(shù)據(jù)庫時(shí),在SQL Server數(shù)據(jù)庫中有一部分SQL語句是用于維護(hù)外鍵關(guān)系,很多數(shù)據(jù)庫系統(tǒng)不需要進(jìn)行維護(hù)外鍵關(guān)系,沒有必要進(jìn)行外鍵檢查等操作,因此在數(shù)據(jù)庫系統(tǒng)下就需要?jiǎng)h除這些操作對應(yīng)的腳本代碼。即在數(shù)據(jù)庫快照中確定腳本文件中需要?jiǎng)h除的腳本代碼。例如,腳本文件中外鍵維護(hù)的腳本代碼為:
[0036]if obj ect_id ( ; sys.sp_msresavedforeignkeys’ )<0exec sys.sp_msdropferencingartic Ie
[0037]通過該步驟,確定出外鍵維護(hù)的腳本代碼為需要?jiǎng)h除的腳本代碼。
[0038]步驟S104,對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件。
[0039]當(dāng)源數(shù)據(jù)庫為SQL Server數(shù)據(jù)庫時(shí),在SQL Server數(shù)據(jù)庫中有一部分SQL語句是用于維護(hù)外鍵關(guān)系,很多數(shù)據(jù)庫系統(tǒng)不需要進(jìn)行維護(hù)外鍵關(guān)系,沒有必要進(jìn)行外鍵檢查等操作,因此在數(shù)據(jù)庫系統(tǒng)下就需要?jiǎng)h除這些操作對應(yīng)的腳本代碼。即在數(shù)據(jù)庫快照中刪除腳本文件中需要?jiǎng)h除的腳本代碼。對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件。具體地,獲取刪除指令,其中,刪除指令為用于刪除腳本文件中需要?jiǎng)h除的腳本代碼的指令;根據(jù)刪除指令對腳本文件中需要?jiǎng)h除的腳本代碼執(zhí)行刪除操作,得到修改后的腳本文件的腳本代碼;獲取寫入指令,其中,寫入指令用于將修改后的腳本文件的腳本代碼寫入腳本文件中;根據(jù)寫入指令將修改后的腳本文件的腳本代碼寫入腳本文件中,得到修改后的腳本文件。
[0040]需要說明的是,上述的刪除指令和寫入指令,可以是接收外部輸入的刪除指令和寫入指令,也可以是接收系統(tǒng)根據(jù)上一步操作自動(dòng)生成的用于執(zhí)行刪除操作的刪除指令和寫入指令。
[0041]例如,如上述確定出需要?jiǎng)h除的腳本代碼,即需要?jiǎng)h除的外鍵維護(hù)的腳本代碼為:
[0042]if object_id( ‘sys.sp_msresavedforeignkeys> )〈Oexec sys.sp_msdropferencingartic Ie
[0043]通過該步驟,刪除需要?jiǎng)h除的腳本代碼。
[0044]圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)庫快照同步處理方法對腳本文件進(jìn)行修改的示意圖。如圖2所示,腳本文件為.pre文件,.pre文件中包括執(zhí)行外鍵維護(hù)的腳本代碼,如圖2中.pre文件中的粗線所示。讀取.pre文件中腳本代碼;確定出.pre文件中需要?jiǎng)h除的腳本代碼,即粗線所示的腳本代碼;刪除.pre文件中需要?jiǎng)h除的腳本代碼,即刪除.pre文件中粗線所示的腳本代碼,得到更改后的.pre文件。
[0045]優(yōu)選地,為了提升對腳本文件進(jìn)行修改的效率,在.pre文件中刪除需要?jiǎng)h除的腳本代碼,數(shù)據(jù)庫快照中.pre文件的數(shù)量和源數(shù)據(jù)庫中.pre文件數(shù)量相同,每個(gè)文件大小為Ik左右。即使是對于超大容量的數(shù)據(jù)庫,對數(shù)據(jù)庫所有的.pre文件進(jìn)行自動(dòng)修改,只需花極少的時(shí)間。
[0046]優(yōu)選地,為了保證腳本文件中腳本代碼的精確性,在本發(fā)明實(shí)施例提供的數(shù)據(jù)庫快照同步處理方法中,該方法還包括:獲取覆蓋指令,其中,覆蓋指令為用于將修改后的腳本文件的腳本代碼覆蓋腳本文件的腳本代碼的指令;以及根據(jù)覆蓋指令,將修改后的腳本文件的腳本代碼覆蓋修改前腳本文件的腳本代碼。
[0047]需要說明的是,上述的覆蓋指令,可以是接收外部輸入的覆蓋指令,也可以是接收系統(tǒng)根據(jù)上一步操作自動(dòng)生成的用于執(zhí)行刪除操作的覆蓋指令。
[0048]通過將修改后的腳本文件的腳本代碼覆蓋修改前腳本文件的腳本代碼,保證了修改后腳本文件中腳本代碼的精確性,從而根據(jù)精確的腳本文件中腳本代碼同步處理,提升了數(shù)據(jù)庫快照同步處理速度。
[0049]步驟S105,通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。
[0050]通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。
[0051]具體地,獲取第二預(yù)設(shè)代理程序,其中,第二預(yù)設(shè)代理程序?yàn)橛糜谕綌?shù)據(jù)庫快照的程序;根據(jù)第二預(yù)設(shè)代理程序,得到同步指令,其中,同步指令為用于執(zhí)行同步數(shù)據(jù)庫快照操作的指令;根據(jù)同步指令將修改后的數(shù)據(jù)庫快照同步至目標(biāo)數(shù)據(jù)庫。
[0052]優(yōu)選地,源數(shù)據(jù)庫為SQL Server數(shù)據(jù)庫,獲取用于同步數(shù)據(jù)庫快照的第二預(yù)設(shè)代理程序?yàn)镾QL Server目錄下的Distrib.exe代理程序,根據(jù)SQL Server目錄下的Distrib.exe代理程序得到同步指令,根據(jù)同步指令同步數(shù)據(jù)庫快照。
[0053]本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫快照同步處理方法,通過確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫;根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件;確定腳本文件中需要?jiǎng)h除的腳本代碼;對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。通過本發(fā)明,解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫快照同步處理速度慢的問題,有效地提升了數(shù)據(jù)庫快照同步處理速度。
[0054]需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0055]本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)庫快照同步處理裝置,需要說明的是,本發(fā)明實(shí)施例的數(shù)據(jù)庫快照同步處理裝置可以用于執(zhí)行本發(fā)明實(shí)施例所提供的用于數(shù)據(jù)庫快照同步處理方法。以下對本發(fā)明實(shí)施例提供的數(shù)據(jù)庫快照同步處理裝置進(jìn)行介紹。
[0056]圖3是根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)庫快照同步處理裝置的示意圖。如圖3所示,該裝置包括:第一確定單元10、生成單元20、第二確定單元30、修改單元40和同步單元50。
[0057]第一確定單元10,用于確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫。
[0058]生成單元20,用于根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件。
[0059]具體地,該生成單元20包括:第四獲取模塊,用于獲取第一預(yù)設(shè)代理程序,其中,第一預(yù)設(shè)代理程序?yàn)橛糜谏蓴?shù)據(jù)庫快照的程序;第五獲取模塊,用于第一預(yù)設(shè)代理程序得到生成指令,其中,生成指令為用于執(zhí)行生成數(shù)據(jù)庫快照操作的指令;以及生成模塊,用于生成指令生成數(shù)據(jù)庫快照。
[0060]第二確定單元30,用于確定腳本文件中需要?jiǎng)h除的腳本代碼。
[0061]修改單元40,用于對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件。
[0062]具體地,該修改單元40包括:第一獲取模塊,用于獲取刪除指令,其中,刪除指令為用于刪除腳本文件中需要?jiǎng)h除的腳本代碼的指令;刪除模塊,用于根據(jù)刪除指令對腳本文件中需要?jiǎng)h除的腳本代碼執(zhí)行刪除操作,得到修改后的腳本文件的腳本代碼;第二獲取模塊,用于獲取寫入指令,其中,寫入指令用于將修改后的腳本文件的腳本代碼寫入腳本文件中;以及寫入模塊,用于寫入指令將修改后的腳本文件的腳本代碼寫入腳本文件中,得到修改后的腳本文件。
[0063]優(yōu)選地,在本發(fā)明實(shí)施例提供的數(shù)據(jù)庫快照同步處理裝置中,該裝置還包括:第三獲取模塊,用于獲取覆蓋指令,其中,覆蓋指令為用于將修改后的腳本文件的腳本代碼覆蓋腳本文件的腳本代碼的指令;以及覆蓋模塊,用于根據(jù)覆蓋指令,將修改后的腳本文件的腳本代碼覆蓋修改前腳本文件的腳本代碼。
[0064]同步單元50,用于通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。
[0065]具體地,該同步單元50包括:第六獲取模塊,用于獲取第二預(yù)設(shè)代理程序,其中,第二預(yù)設(shè)代理程序?yàn)橛糜谕綌?shù)據(jù)庫快照的程序;第七獲取模塊,用于第二預(yù)設(shè)代理程序,得到同步指令,其中,同步指令為用于執(zhí)行同步數(shù)據(jù)庫快照操作的指令;以及同步模塊,用于同步指令將修改后的數(shù)據(jù)庫快照同步至目標(biāo)數(shù)據(jù)庫。
[0066]本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫快照同步處理裝置,通過第一確定單元10確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫;生成單元20根據(jù)源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,數(shù)據(jù)庫快照是用于將源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件;第二確定單元30確定腳本文件中需要?jiǎng)h除的腳本代碼;修改單元40對腳本文件進(jìn)行修改,刪除腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;同步單元50通過修改后的腳本文件對數(shù)據(jù)庫快照執(zhí)行同步處理。通過本發(fā)明,解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫快照同步處理速度慢的問題,有效地提升了數(shù)據(jù)庫快照同步處理速度。
[0067]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲在存儲裝置中由計(jì)算裝置來執(zhí)行,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0068]以上僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種數(shù)據(jù)庫快照同步處理方法,其特征在于,包括: 確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫; 根據(jù)所述源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,所述數(shù)據(jù)庫快照是用于將所述源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至所述目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在所述數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件; 確定所述腳本文件中需要?jiǎng)h除的腳本代碼; 對所述腳本文件進(jìn)行修改,刪除所述腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;以及 通過所述修改后的腳本文件對所述數(shù)據(jù)庫快照執(zhí)行同步處理。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,對所述腳本文件進(jìn)行修改,刪除所述腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件包括: 獲取刪除指令,其中,所述刪除指令為用于刪除所述腳本文件中需要?jiǎng)h除的腳本代碼的指令; 根據(jù)所述刪除指令對所述腳本文件中需要?jiǎng)h除的腳本代碼執(zhí)行刪除操作,得到修改后的腳本文件的腳本代碼; 獲取寫入指令,其中,所述寫入指令用于將修改后的腳本文件的腳本代碼寫入所述腳本文件中;以及 根據(jù)所述寫入指令將修改后的腳本文件的腳本代碼寫入所述腳本文件中,得到修改后的腳本文件。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在得到修改后的腳本文件之后,所述方法還包括: 獲取覆蓋指令,其中,所述覆蓋指令為用于將修改后的所述腳本文件的腳本代碼覆蓋所述腳本文件的腳本代碼的指令;以及 根據(jù)所述覆蓋指令,將修改后的所述腳本文件的腳本代碼覆蓋修改前所述腳本文件的腳本代碼。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)所述源數(shù)據(jù)庫生成數(shù)據(jù)庫快照包括: 獲取第一預(yù)設(shè)代理程序,其中,所述第一預(yù)設(shè)代理程序?yàn)橛糜谏伤鰯?shù)據(jù)庫快照的程序; 根據(jù)所述第一預(yù)設(shè)代理程序得到生成指令,其中,所述生成指令為用于執(zhí)行生成所述數(shù)據(jù)庫快照操作的指令;以及 根據(jù)所述生成指令生成所述數(shù)據(jù)庫快照。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,通過所述修改后的腳本文件對所述數(shù)據(jù)庫快照執(zhí)行同步處理包括: 獲取第二預(yù)設(shè)代理程序,其中,所述第二預(yù)設(shè)代理程序?yàn)橛糜谕剿鰯?shù)據(jù)庫快照的程序; 根據(jù)所述第二預(yù)設(shè)代理程序,得到同步指令,其中,所述同步指令為用于執(zhí)行同步所述數(shù)據(jù)庫快照操作的指令;以及 根據(jù)所述同步指令將修改后的所述數(shù)據(jù)庫快照同步至目標(biāo)數(shù)據(jù)庫。
6.一種數(shù)據(jù)庫快照同步處理裝置,其特征在于,包括: 第一確定單元,用于確定源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫; 生成單元,用于根據(jù)所述源數(shù)據(jù)庫生成數(shù)據(jù)庫快照,其中,所述數(shù)據(jù)庫快照是用于將所述源數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)移至所述目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)庫,在所述數(shù)據(jù)庫快照中包括用于執(zhí)行同步操作的腳本文件; 第二確定單元,用于確定所述腳本文件中需要?jiǎng)h除的腳本代碼; 修改單元,用于對所述腳本文件進(jìn)行修改,刪除所述腳本文件中需要?jiǎng)h除的腳本代碼,得到修改后的腳本文件;以及 同步單元,用于通過所述修改后的腳本文件對所述數(shù)據(jù)庫快照執(zhí)行同步處理。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述修改單元包括: 第一獲取模塊,用于獲取刪除指令,其中,所述刪除指令為用于刪除所述腳本文件中需要?jiǎng)h除的腳本代碼的指令; 刪除模塊,用于根據(jù)所述刪除指令對所述腳本文件中需要?jiǎng)h除的腳本代碼執(zhí)行刪除操作,得到修改后的腳本文件的腳本代碼; 第二獲取模塊,用于獲取寫入指令,其中,所述寫入指令用于將修改后的腳本文件的腳本代碼寫入所述腳本文件中;以及 寫入模塊,用于所述寫入指令將修改后的腳本文件的腳本代碼寫入所述腳本文件中,得到修改后的腳本文件。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 第三獲取模塊,用于獲取覆蓋指令,其中,所述覆蓋指令為用于將修改后的所述腳本文件的腳本代碼覆蓋所述腳本文件的腳本代碼的指令;以及 覆蓋模塊,用于根據(jù)所述覆蓋指令,將修改后的所述腳本文件的腳本代碼覆蓋修改前所述腳本文件的腳本代碼。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述生成單元包括: 第四獲取模塊,用于獲取第一預(yù)設(shè)代理程序,其中,所述第一預(yù)設(shè)代理程序?yàn)橛糜谏伤鰯?shù)據(jù)庫快照的程序; 第五獲取模塊,用于所述第一預(yù)設(shè)代理程序得到生成指令,其中,所述生成指令為用于執(zhí)行生成所述數(shù)據(jù)庫快照操作的指令;以及 生成模塊,用于所述生成指令生成所述數(shù)據(jù)庫快照。
10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述同步單元包括: 第六獲取模塊,用于獲取第二預(yù)設(shè)代理程序,其中,所述第二預(yù)設(shè)代理程序?yàn)橛糜谕剿鰯?shù)據(jù)庫快照的程序; 第七獲取模塊,用于所述第二預(yù)設(shè)代理程序,得到同步指令,其中,所述同步指令為用于執(zhí)行同步所述數(shù)據(jù)庫快照操作的指令;以及 同步模塊,用于所述同步指令將修改后的所述數(shù)據(jù)庫快照同步至目標(biāo)數(shù)據(jù)庫。
【文檔編號】G06F11/14GK104462342SQ201410735317
【公開日】2015年3月25日 申請日期:2014年12月4日 優(yōu)先權(quán)日:2014年12月4日
【發(fā)明者】儲雨知 申請人:北京國雙科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1