災難恢復方法與系統的製作方法
2023-06-18 19:23:51 2
專利名稱:災難恢復方法與系統的製作方法
技術領域:
一般地講,本發明涉及計算系統領域,更具體地講,涉及一種災難恢復方法與系統。
背景技術:
災難恢復系統一般備份計算機文件,以抵禦數據損失。在典型的災難恢復系統中,文件被定期拷貝到磁帶或其它備份系統中。這一般以固定時段進行,例如在晚上下班時間或者在周末。當計算機系統出故障時,災難恢復系統可以利用最近的備份來恢復計算機系統。這一般涉及從備份系統將文件拷貝回計算機系統。
現有災難恢復系統的問題在於其只把計算機系統恢復到在最後一次備份時存在的狀態。在最後一次備份之後發生的任何變化一般都被丟失了。
發明內容
本發明提供了一種災難恢復的改進方法與系統,以極大地減輕或消除與先前系統與方法相關聯的問題與缺點。具體地講,除進行資料庫的完全備份之外,還記錄對於資料庫的增加的(incremental)改變,並且該增加的改變可以作為增加的備份存檔。然後可以使用完全備份、一個或多個增加的備份、和/或當前未存檔的增加的改變來恢復資料庫。
在一個實施例中,一種災難恢復方法包括從第一資料庫拷貝至少一部分信息到備份系統作為備份信息。該方法還包括在第二資料庫中存儲增加的改變。該增加的改變表示第一資料庫中至少一部分信息的變化。該方法還包括利用備份信息與增加的改變中的至少一個來恢復第一資料庫。
在特定實施例中,該方法還包括從第二資料庫拷貝第二增加的改變到備份系統。在該實施例中,恢復第一資料庫包括使用備份信息、存儲在第二資料庫中的增加的改變、以及存儲在備份系統中的第二增加的改變中的至少一個。
為了更徹底地理解本發明,現在參照附圖進行以下描述,其中圖1為說明根據本發明一個實施例的災難恢復系統的示範性方框圖;圖2A與2B為說明根據本發明一個實施例的首要(primary)與輔助(secondary)資料庫的示範性方框圖;圖3為說明根據本發明一個實施例的災難恢復體系結構的一部分的示範性方框圖;圖4為說明根據本發明一個實施例的災難恢復方法的示範性流程圖;圖5為說明根據本發明一個實施例的在首要伺服器上的文件備份方法的示範性流程圖;圖6為說明根據本發明一個實施例的在輔助伺服器上的文件備份方法的示範性流程圖;圖7為說明根據本發明一個實施例的在輔助伺服器上的文件恢復方法的示範性流程圖;圖8為說明根據本發明一個實施例的在首要伺服器上的文件恢復方法的示範性流程圖。
具體實施例圖1為說明根據本發明一個實施例的災難恢復系統100的示範性方框圖。在所示實施例中,系統100包含首要伺服器102、輔助伺服器104、網絡106、以及一個或多個客戶機108。在不脫離本發明範圍的前提下,可以使用系統100的其它實施例。
在操作的一個方面,首要資料庫110存儲首要伺服器102使用的信息。資料庫110可以,例如存儲由首要伺服器102使用以向客戶機108提供在線網絡(web)服務的信息。資料庫110還可以存儲註冊信息,例如由作業系統使用的配置信息。在資料庫110中的信息可能隨時間變化,例如當客戶機108添加、修改、或者刪除信息時。首要伺服器102中的首要資料庫110還可能出故障或者變得無法運行,例如當發生硬體故障或者電源故障時。
在首要資料庫110變得可以再次運行之後,資料庫110中的信息需要恢復。作為特定例子,在資料庫110出故障之後,資料庫110可能丟失信息,並且在資料庫110重新進入服務之前該信息可能需要被拷貝到資料庫110中。在一個實施例中,存儲在首要資料庫110中的至少一部分信息被定期拷貝到備份系統112中或在其中存檔。當對資料庫110中的信息作出改變時,這些改變可以被存儲在輔助資料庫114中。可以也可以不把輔助資料庫114中的改變定期在備份系統112中存檔。然後,可以使用在備份系統112和/或輔助資料庫114中的信息恢復首要資料庫110。
首要伺服器102耦合至網絡106。在本文件中,名詞「耦合」指兩個或更多個組件之間任何直接或非直接通信,而不管這些組件是否在物理上相互接觸。另外,名詞「通信」可以指物理分離的組件之間或者單個物理單元內組件之間的通信。首要伺服器102用來執行系統100中各種功能的一或多種功能。例如首要伺服器102可以表示網絡伺服器,用來通過網絡106向客戶機108提供在線網絡服務。首要伺服器102也可以表示資料庫伺服器,用來存儲由組織的僱員所使用的信息。在不脫離本發明範圍的前提下,首要伺服器102可以執行系統100中任何其它和/或附加功能。首要伺服器102可以包含操作用來執行系統100中的至少一種功能的任何硬體、軟體、固件或其組合。在所示實施例中,首要伺服器102包含用來存儲客戶機108所使用的信息的資料庫110。在不脫離本發明範圍的前提下,可以使用首要伺服器102的其它實施例。
輔助伺服器104耦合至網絡106。輔助伺服器104存儲系統100所使用以進行災難恢復操作的信息。例如,輔助伺服器104可以存儲用來恢復首要伺服器102中資料庫110的信息。在本文件中,名詞「恢復」指使在資料庫中存儲的信息回到先前狀態。先前狀態例如可能在資料庫110出故障之時或者在靠近此時刻之時已經存在。先前狀態也可以在資料庫110出故障之前已經存在。在一個實施例中,輔助伺服器104可以存儲首要伺服器102的資料庫110中信息的完全備份。輔助伺服器104也可以存儲對資料庫110中信息所作的改變。在資料庫110出故障並且變得可以再次運行之後,輔助伺服器104可以將備份信息與增加的改變傳送給首要伺服器102,並且首要伺服器102可以使用該信息來恢復資料庫110。輔助伺服器104可以包含操作用來存儲並促進(facilitate)用於恢復至少一個首要資料庫110的信息的檢索(retrieval)的任何硬體、軟體、固件或其組合。在所示實施例中,輔助伺服器104包含備份系統112以及輔助資料庫114。在不脫離本發明範圍的前提下,可以使用輔助資料庫104的其它實施例。
網絡106耦合至首要伺服器102、輔助伺服器104、以及客戶機108。網絡106促進系統100組件之間的通信。網絡106例如可以在網絡地址之間傳送網際網路協議(IP)數據包、幀中繼幀、異步傳送模式(ATM)信元、和/或任何適當格式的其它任何適當信息。網絡106可以包含一個或多個區域網(LAN)、城域網(MAN)、廣域網(WAN)、被稱為網際網路的全球計算機網絡的全部或者一部分,和/或在一個或多個地點的任何一個或多個其它通信系統。
客戶機108耦合至網絡106。客戶機108操作用於允許用戶訪問和/或改變在首要伺服器102的資料庫110中包含的信息。例如,客戶機108可以通過網絡106向首要伺服器102提交資料庫查詢,例如從資料庫110檢索指定信息的請求。客戶機108也可以向首要伺服器102提交命令,指令首要伺服器102添加、修改、或者刪除包含在資料庫110中的信息。客戶機108可以包含操作用來通過網絡106傳送和/或接收信息的任何硬體、軟體、固件或其組合。客戶機108例如可以包含執行網絡瀏覽器的桌面計算機。
首要資料庫110用來存儲首要伺服器102用來執行系統100中一或多種功能的信息。在本文件中,名詞「資料庫」可以指信息集合。該信息可以駐留在文檔或者其它文件中,在註冊表中,在文件和/或註冊表集合中,和/或在任何其它適當的一或多種結構中。在一個實施例中,資料庫110可以存儲首要伺服器102用來通過網絡106向客戶機108提供網絡服務的信息。作為特定例子,資料庫110可以存儲使用首要伺服器102的商業用戶的名稱、地址及產品定單。在不脫離本發明的範圍的情況下,資料庫110可以存儲任何其它和/或附加的信息。資料庫110可以包含用來存儲信息並促進信息的檢索的任何硬體、軟體、固件或其組合。資料庫110可以使用各種數據結構、安排、和/或編輯來存儲信息。資料庫110例如可以包含動態隨機存取存儲器(DRAM)、靜態隨機存取存儲器(SRAM)、或者任何其它適當的一個或多個易失或非易失存儲器與檢索設備。雖然圖1顯示首要資料庫110駐留在首要伺服器102中,但是首要資料庫110可以駐留在首要伺服器102能夠訪問的任何一個或多個地點。
備份系統112用來存儲或存檔來自首要資料庫110和/或輔助資料庫114的信息。例如,備份系統112可以接收全部或部分首要資料庫110中的信息,並且存儲該信息。作為特定例子,在資料庫110的完全備份116期間,備份系統112可以接收來自首要資料庫110的信息。當資料庫110出故障並且變得可以再次運行時,備份系統112可以將備份信息傳送給首要伺服器102,並且首要伺服器102可以使用該備份信息來恢復資料庫110。另外,在一個實施例中,備份系統112可以存儲或存檔至少部分存儲在輔助資料庫114中的數據。從輔助資料庫114到備份系統112的信息存檔可以稱為增加的備份120。備份系統112可以包含,用來存儲信息並促進信息檢的任何硬體、軟體、固件或其組合。在所示實施例中,備份系統112包含磁帶備份系統。在不脫離本發明範圍的前提下,可以使用備份系統112的其它實施例。
輔助資料庫114用來存儲識別對資料庫110中的信息進行的改變的信息。在一個實施例中,輔助資料庫114存儲一個或多個增加的改變118。增加的改變118可以描述自從最後一次完全備份116以來首要資料庫110中信息是如何變化的。在一個實施例中,增加的改變118相應於資料庫操作,例如寫數據到首要資料庫110、從其中刪除數據、或者修改其中數據的操作。在特定實施例中,增加的改變118可以識別已經被改變的首要資料庫110的區段。作為特定的例子,如果向首要資料庫110中的表添加了信息,則增加的改變118可以識別該表、添加到該表的信息、以及該信息在該表中添加的所在。如果從首要資料庫110的表中刪除信息,則增加的改變118可以識別該表、以及從該表中刪除了哪些信息。如果修改首要資料庫110的表中的信息,則增加的改變118可以識別該表、以及包含在該表中的新的修改後的信息。在不脫離本發明範圍的前提下,可以在增加的改變118中包含其它信息和/或在輔助資料庫114中存儲其它信息。雖然本說明書將增加的改變118描述為表示對首要資料庫110中文件的改變,但是增加的改變118可以表示對首要資料庫110中任何信息的改變。作為特定的例子,增加的改變118可以表示對首要資料庫110中註冊表進行的改變。輔助資料庫114可以包含用來存儲信息並促進信息檢索的任何硬體、軟體、固件或其組合。輔助資料庫114可以使用各種數據結構、安排、和/或編輯中的任何一種來存儲信息。雖然圖1顯示輔助資料庫114駐留在輔助伺服器104中,但是輔助資料庫114可以駐留在輔助伺服器104可以訪問的任何一個或多個地點上。
在操作的一個方面,當首要伺服器102中的首要資料庫110出故障時,系統100使用輔助伺服器104來進行災難恢復。在特定實施例中,災難恢復操作包含兩個總的階段,即備份階段與恢復階段。備份階段可以包含將至少一部分來自首要資料庫110的信息拷貝到輔助伺服器104,到備份系統112和/或輔助資料庫114。恢復階段包含將至少一部分來自備份系統112和/或輔助資料庫114的信息拷貝回到首要資料庫110,由此恢復首要資料庫110到先前狀態。
在一個實施例中,災難恢復操作的備份階段涉及在輔助伺服器104中進行完全備份116以及增加的改變118的存儲。完全備份116將至少一部分來自首要資料庫110的信息拷貝到輔助伺服器104中的備份系統112。在特定實施例中,完全備份116涉及將所有來自首要資料庫110的信息拷貝到備份系統112。在另一特定實施例中,完全備份116涉及將首要資料庫110的信息子集拷貝到備份系統112。在完全備份116中涉及的信息可以由用戶指定,例如使用客戶機108或者至首要伺服器102或輔助伺服器104的接口的用戶,或者以任何其它適當方式指定。
在這個實施例中,除完全備份116之外,可以在輔助資料庫114中將對首要資料庫110中信息所作的改變記錄為增加的改變118。在一個實施例中,增加的改變118存儲在輔助資料庫114中,直至下一次完全備份116開始。在下一次完全備份116開始之後,可以將輔助資料庫114重新初始化,例如通過刪除在輔助資料庫114中存儲的任何增加的改變118。在特定實施例中,可以根據時間劃分在輔助資料庫114中存儲的增加的改變118。例如,可以根據增加的改變118何時發生而將增加的改變118存儲在不同的文件或數據存儲中,並且每個文件或數據存儲可以相應於不同的時段。在本文件中,名詞「每個」指所識別項目的至少子集中的每一個。
在該實施例中,存儲在備份系統112中的備份信息以及存儲在輔助資料庫114中的增加的改變118可以用來在資料庫故障的情況下恢復首要資料庫110。換而言之,使用存儲在備份系統112中的備份信息以及存儲在輔助資料庫114中的增加的改變118,可以重現創建首要資料庫110的先前狀態。具體地講,首要伺服器102可以將來自備份系統112的備份信息拷貝到首要資料庫110,這就將首要資料庫110恢復到在最後一次完全備份116時或接近該時刻時存在的狀態。首要伺服器102可以使首要資料庫110處於該狀態。首要伺服器102還可以接收一些或者全部來自輔助資料庫114的增加的改變118,並且在首要資料庫110中重新創建這些增加的改變118。例如,首要伺服器102可以接收表示從資料庫表中刪除信息的增加的改變118,並且首要伺服器102可以通過從該資料庫表中刪除所識別的信息而在首要資料庫110中實現該變化。通過這種方式,首要伺服器102可以使用在輔助資料庫114中存儲的增加的改變118來將首要資料庫110恢復到在最後一次完全備份116的時刻與資料庫出故障的時刻之間存在的狀態。在特定實施例中,從最後一次完全備份116開始並進行到直至達到資料庫出故障的時刻或者直至達到所希望時刻,首要伺服器102依次重新創建增加的改變118。允許用戶指定是否應該將首要資料庫110恢復到資料庫出故障的時刻或者到另一時刻。
在另一實施例中,在災難恢復操作的備份階段期間,輔助伺服器104可以進行一個或多個增加的備份120。在這一實施例中,可以將在備份系統112中拷貝或者在其中存檔在輔助資料庫114中存儲的增加的改變118,並且所存檔的增加的改變118可以但卻不需要從輔助資料庫114中刪除。作為特定的例子,輔助伺服器104可以每15或30分鐘就在備份系統112中存檔增加的改變118,儘管可以使用任何其它適當的時間周期。通過這種方式,輔助資料庫114可以存儲增加的改變118一限定的時間段。在特定實施例中,取決於增加的改變118何時發生,輔助伺服器104中的增加的改變118可以存儲在不同文件或者數據存儲中,並且增加的備份120將這些文件或數據存儲的一個或多個拷貝到備份系統120。
在該實施例中,在備份系統112中存儲的完全備份信息、在備份系統112中作為增加的備份120存儲的增加的改變118、以及在輔助資料庫114存儲的增加的改變118可以用來恢復首要資料庫110。在該實施例中,首要伺服器102可以將來自備份系統112的備份信息拷貝到首要資料庫110,這就將首要資料庫110恢復到在最後一次完全備份116時或接近該時刻時存在的狀態。首要伺服器102可以使首要資料庫110處於該狀態。首要伺服器102還可以接收一些或者全部來自備份系統112的增加的改變120,並且重新創建包含在這些增加的備份120中的增加的改變118。這就將首要資料庫110恢復到在所接收並實現的最後一次增加的備份120時或接近該時刻時存在的狀態。再次地,首要伺服器102可以使首要資料庫110處於該狀態,或者首要伺服器102可以接收並實現在輔助資料庫114中存儲的增加的改變118。在特定實施例中,首要伺服器102依次重新創建在備份系統112與輔助資料庫114兩者中的增加的改變118。另外,可以給予用戶指明首要資料庫110將被恢復到的時刻的選擇。
以上敘述描述了在災難恢復操作的備份階段期間,在輔助伺服器104中存儲信息的各種方式。還描述了在使用輔助伺服器104中的信息的災難恢復操作的恢復階段期間,可以恢復首要資料庫110的各種方式。在不脫離本發明範圍的前提下,可以使用任何其它和/或附加方法以及技術來在備份階段期間,在輔助伺服器104中存儲信息,和/或在恢復階段期間,恢復首要資料庫110。例如,系統100可以被編程用來總是將首要資料庫110恢復到在資料庫110出故障時或者接近這一時刻時存在的狀態。在該實施例中,可以不給予用戶將首要資料庫110恢復到在資料庫110出故障之前存在的狀態的選擇。
雖然圖1描述了災難恢復系統100的一種示例實施例,但是在不脫離本發明範圍的前提下,可以對系統100進行各種改變。例如,雖然圖1顯示一個首要伺服器102以及一個輔助伺服器104,但是系統100可以包含任何適當數目的首要伺服器102和/或輔助伺服器104。作為特定的例子,系統100可以包含多個首要伺服器102,例如對於每個輔助伺服器104的一和八之間的首要伺服器102。另外,雖然圖1顯示輔助伺服器104包含備份系統112與輔助資料庫114,但是備份系統112與資料庫114可以駐留在分離的平臺上。另外,雖然圖1顯示使用伺服器102與104,但是可以在系統100中使用任何其它適當的一個或多個計算與通信設備。
圖2A與2B為說明根據本發明一個實施例的首要與輔助資料庫110與114的示範性方框圖。具體地講,圖2A說明了在兩個首要伺服器102中的兩個示例首要資料庫110,而圖2B說明了在輔助伺服器104中的示例輔助資料庫114。在圖2A與2B中顯示的資料庫內容只用於說明目的。在不脫離本發明範圍的前提下,資料庫110與114可以包含任何適當安排下的任何其它和/或附加信息。
在圖2A中,使用標準文件夾系統細分(subdivide)兩個首要資料庫110a與110b的內容。在文件夾系統中,內容可以被劃分為文件夾層次。每個文件夾都可以包含信息、應用程式、其它文件夾、文件、註冊表、無內容、和/或其它任何內容。雖然本說明書描述對文件夾200與202中的文件進行增加的改變118,但是在不脫離本發明範圍的前提下,增加的改變118可以影響文件夾200與202的任何其它內容。
在所示實施例中,資料庫110a的內容被劃分為兩個驅動器文件夾200a與200b,而資料庫110b的內容駐留在單獨一個驅動器文件夾200c中。在一個實施例中,資料庫110可以包含多個物理驅動器和/或邏輯驅動器。在所示實施例中,資料庫110a具有由驅動器文件夾200a與200b表示的兩個物理的和/或邏輯的驅動器,而資料庫110b具有由驅動器文件夾200c表示的一個物理的和/或邏輯的驅動器。
在每個驅動器文件夾200內,資料庫110的內容可以被進一步細分為文件系統文件夾202。文件系統文件夾202可以,例如表示資料庫110中不同的信息類別。在所示實施例中,驅動器文件夾200a被劃分為三個文件系統文件夾202a-202c。文件夾202a可以包含能夠由首要伺服器110a執行的應用程式。文件夾202b可以包含允許用戶使用交換伺服器應用程式傳送與共享信息的指令與信息。文件夾202c可以包含待暫時存儲的信息。文件系統文件夾202的內容可以包含由首要伺服器102執行的應用程式所使用的特定文件、額外文件夾、資料庫表、和/或其它任何信息。在不脫離本發明範圍的前提下,可以使用額外的文件夾層進一步細分文件夾200-202。
在災難恢復操作的一個方面,在完全備份116期間,首要資料庫110中的至少部分信息可以被拷貝到備份系統112,並且為增加的改變118監視該信息。在一個實施例中,在另一個實施例中,首要資料庫110中的信息的子集被拷貝到備份系統112中,並且為增加的改變118監視該信息。在特定的實施例中,用戶可以指定首要資料庫110中的哪個文件夾200-202和/或文件要被拷貝到備份系統112中和/或為增加的改變118而被監視。例如當首要資料庫110中的某些信息不隨時間變化時,這會是有用的。
在災難恢復操作的另一個方面,對於首要資料庫110中的信息的增加的改變118可以被存儲在輔助伺服器104的輔助資料庫114中。例如,可以在首要資料庫110a與110b中添加、修改、或者刪除信息,並且這些改變可以記錄在輔助資料庫114中。
圖2B顯示輔助資料庫114的一個例子。在所示實施例中,輔助資料庫114使用標準文件夾系統來存儲增加的改變118。在所示實施例中,輔助資料庫114包含應用程式文件夾250、增加的改變文件夾252、一個或多個伺服器文件夾254、一個或多個時間戳文件夾256、一個或多個驅動器文件夾258、以及一個或多個文件系統文件夾260。在該實施例中,輔助伺服器104可以在位於驅動器文件夾258和/或文件系統文件夾260中的文件中存儲增加的改變118。在不脫離本發明範圍的前提下,可以使用其它實施例和/或安排。
應用程式文件夾250可以表示輔助資料庫114中存儲災難恢復應用程式相關的信息的文件夾。作為特定的例子,應用程式文件夾250可以包含對一個或多個首要資料庫110進行的增加的改變118、用來恢復首要資料庫110的應用程式文件、和/或任何其它適當的信息。
增加的改變文件夾252可以存儲對一個或多個首要資料庫110作出的增加的改變118。增加的改變文件夾252可以例如有助於使增加的改變118與應用程式文件夾250中存儲的其它信息分離。
每個伺服器文件夾254可以存儲由特定首要伺服器102進行的增加的改變118。在所示實施例中,輔助資料庫114包含兩個伺服器文件夾254a與254b,一個伺服器文件夾用於具有首要資料庫110a的第一首要伺服器102,一個伺服器文件夾用於具有首要資料庫110b的第二首要伺服器102。這允許,例如單個輔助資料庫114分離並存儲對於多個首要伺服器102的增加的改變118。輔助資料庫114可以服務任何適當數目的首要伺服器102。在一個實施例中,輔助資料庫114可以服務一至八個首要伺服器102。
時間戳文件夾256表示可以進行增加的改變118的不同時段。在所示實施例中,每個伺服器文件夾254都包含至少兩個時間戳文件夾256。標有「當前(CURRENT)」的一個時間戳文件夾256存儲來自當前時段的增加的改變118,並且至少一個另外的時間戳文件夾256存儲來自先前時段的增加的改變118。在不脫離本發明範圍的前提下,可以使用利用任何數目時間戳文件夾256的其它實施例。例如,輔助資料庫114可以包含對於自最後一次完全備份116以來已經經過的每個時段的時間戳文件夾256。
在所示實施例中,表示不同於當前時段的時段的時間戳文件夾256包含時間戳標記。在本文件中,名詞「時間戳」指用來至少部分識別或表示日期和/或時間的任何信息或結構。在特定實施例中,這些時間戳文件夾256的每一個都可以包含識別輔助伺服器104何時開始或停止在該時間戳文件夾256中存儲增加的改變118的時間戳。例如,在一個實施例中,時間戳文件夾256可以存儲在一天的不同小時中發生的增加的改變118,並且每個時間戳都可以識別一天的特定小時。在不脫離本發明範圍的前提下,可以賦予時間戳文件夾256其它標記,其可以引用也可以不引用日期和/或時間。
輔助資料庫114中每個驅動器文件夾258可以相應於首要資料庫110中的驅動器文件夾200。輔助資料庫114中每個文件系統文件夾260可以相應於首要資料庫110中的文件系統文件夾202。
在操作的一個方面,增加的改變118存儲在位於驅動器文件夾258、文件系統文件夾260、和/或輔助資料庫114中其它文件夾的文件內。在特定實施例中,輔助資料庫114中的文件是稀疏(sparse)文件。在以下描述中,位於時間戳文件夾256中的文件的集合可以稱為數據存儲。
當對首要資料庫110中信息進行改變時,該改變可以被傳送到輔助伺服器104作為增加的改變118。輔助伺服器104可以識別與增加的改變118相關聯的首要伺服器102。輔助伺服器104還可以識別在該首要伺服器102中在何處進行的增加的改變118。例如,如果增加的改變118影響首要資料庫110的驅動器文件夾200中的文件,則輔助伺服器104可以識別該驅動器文件夾200。如果增加的改變118影響首要資料庫110的文件系統文件夾202中的文件,則輔助伺服器104可以識別該文件系統文件夾202以及與該文件系統文件夾202相關聯的驅動器文件夾200。輔助伺服器104還可以進一步識別受增加的改變118影響的首要資料庫110中的文件。
輔助伺服器104可以使用該和/或其它信息來訪問輔助資料庫114中的適當文件夾。例如,輔助伺服器104可以訪問與所識別的首要伺服器102相關聯的伺服器文件夾254。輔助伺服器104還可以訪問包含在該伺服器文件夾254中的當前時間戳文件夾256。輔助伺服器104還可以進一步訪問與所識別的驅動器文件夾200相關聯的驅動器文件夾258和/或與所識別的文件系統文件夾202相關聯的文件系統文件夾260。在訪問輔助資料庫114中的適當文件夾之後,輔助伺服器104可以在該文件夾中存儲增加的改變118。例如,輔助伺服器104可以在輔助資料庫114中與所識別的文件相關聯的文件中存儲增加的改變118。在一個實施例中,輔助伺服器104可以在具有與首要資料庫110中受增加的改變118影響的文件相同名稱的文件中存儲增加的改變118。作為特定例子,如果增加的改變118影響首要資料庫110中名稱為「publ.edb」的文件,則輔助伺服器104可以在輔助資料庫114中名稱為publ.edb」的文件中存儲該增加的改變118。通過這種方式,輔助伺服器104可以在輔助資料庫114中重新創建首要資料庫110的至少一部分文件夾層次。
在特定實施例中,輔助伺服器104可以持續在輔助資料庫114的「當前」時間戳文件夾256中存儲增加的改變118,直至經過給定的時段。在經過該時段之後,輔助伺服器104關閉並重新命名「當前」時間戳文件夾256。例如,輔助伺服器104可以使用一天的日期與小時來標記該時間戳文件夾256。輔助伺服器104還可以創建新的「當前」時間戳文件夾256,並且開始在該新的時間戳文件夾256中存儲更多的增加的改變118。當在新的時間戳文件夾256中存儲增加的改變118時,輔助資料庫114可以將被重新命名的時間戳文件夾256中的增加的改變118傳送給備份系統112作為增加的備份120。在增加的備份120完成之後,輔助資料庫114可以刪除重新命名的時間戳文件夾256。然後,通過重新命名「當前」時間戳文件夾256並創建新的時間戳文件夾256,輔助伺服器104可以在經過下一個時段後重複該過程。在另一實施例中,在進行增加的備份120之前,輔助伺服器104可以等待直至經過多個時段。
輔助伺服器104已經被描述為進入適當的時間戳文件夾256、驅動器文件夾258、和/或文件系統文件夾260,以存儲增加的改變118。這假定文件夾256-260存在,並且可以由輔助伺服器104訪問。在特定實施例中,在開始對於首要資料庫110的完全備份116時,可以從輔助資料庫114中刪除與該首要資料庫110相關聯的增加的改變118。例如通過刪除適當伺服器文件夾254的內容可以發生這一情況。結果,在存儲增加的改變118之前,輔助伺服器104可能需要創建時間戳文件夾256、驅動器文件夾258、和/或文件系統文件夾260。另外,輔助伺服器104可能需要創建在其中存儲輔助資料庫114中的增加的改變118的文件。在該實施例中,當輔助伺服器104接收增加的改變118時,輔助伺服器104可以確定在輔助資料庫114中是否存在適當的文件夾256-260以及文件。如果不存在,則輔助伺服器104可以創建所需的文件夾256-260和/或所需文件。
在一個實施例中,如果沒有對首要資料庫110的驅動器文件夾200或者文件系統文件夾202的內容進行增加的改變118,則輔助資料庫114會缺少相應的驅動器文件夾258或文件系統文件夾260。例如,在所示實施例中,驅動器文件夾258e包含名稱為「APPS」與「交換伺服器(EXCHANGE SERVER)」的文件系統文件夾260i-260j。這些文件系統文件夾260i-260j相應於圖2A的文件系統文件夾202a-202b。這表示對文件系統文件夾202a-202b的內容進行了增加的改變118。然而,在另一實施例中,驅動器文件夾258e可以缺少文件系統文件夾260i。這可能表示在時間戳文件夾256c所表示的時段內,沒有對文件系統文件夾202a「APPS」的內容進行增加的改變118。
由系統100監視並存儲在輔助資料庫114中的增加的改變118可以隨特定需求改變。在一個實施例中,涉及首要資料庫110的某些資料庫操作不一定導致在輔助資料庫114中創建與存儲增加的改變118。作為特定的例子,用戶可以打開、關閉、或者讀取來自首要資料庫110中文件的信息。這些操作不改變該資料庫文件中的數據,因此不需要在輔助資料庫114中存儲增加的改變118。
其它資料庫操作可能導致在輔助資料庫114中創建與存儲增加的改變118。例如,用戶可以向首要資料庫110中的文件寫入數據。當發生這種情況時,輔助伺服器104可以確定具有相同名稱的文件是否出現在輔助資料庫114的適當文件夾258或260中,如果該文件不存在則創建該文件,並且在該文件中存儲新近寫入的數據作為增加的改變118。用戶還可以刪除首要資料庫110中的文件。在這種情況下,輔助伺服器104可以將輔助資料庫114中相應文件標記為已刪除。類似地,用戶可以刪除首要資料庫110中的子樹,這就刪除了首要資料庫110中的文件夾200或者202的內容。當發生這種情況時,輔助伺服器104可以刪除輔助資料庫114中相應文件夾258或260的內容,並且將相應文件夾258或260標記為已刪除。用戶還可以重新命名首要資料庫110中的文件。在這種情況下,輔助伺服器104可以將輔助資料庫114中相應文件從舊名稱重新命名為新名稱,在輔助資料庫114中創建具有該舊名稱的新文件,並且將該新文件標記為已刪除。另外,用戶可以執行影響首要資料庫110中文件的一個或多個特性的各種其它命令。例如,用戶可以執行諸如SetBasicInfo與SetCompression等命令,這就改變了與首要資料庫110中文件相關聯的信息和/或壓縮。用戶可以還執行諸如SetSecurity與SetSecurityByName等命令,這就改變了首要資料庫110中文件的安全特性。用戶還可以截斷首要資料庫110中的文件,這就減少了該文件的大小。對於這些操作,輔助伺服器104可以在輔助資料庫114中相應文件中存儲新的文件信息、文件安全信息、以及文件長度。除此以外,可以在輔助資料庫114中存儲對於進行首要資料庫110中註冊表的改變,例如當作業系統添加、更新、或者去除註冊表中的配置信息時。在不脫離本發明範圍的前提下,可以在輔助資料庫114中存儲其它增加的改變118。
雖然圖2A與2B說明了示例的首要與輔助資料庫110與114,但是在不脫離本發明範圍的前提下,可以對資料庫110與114進行各種改變。例如,文件夾200-202以及文件夾250-260隻是為說明的目的。可以在資料庫110和/或114中使用任何其它和/或附加的文件夾。另外,可以使用任何適當的信息安排以替代文件夾系統。
圖3為說明根據本發明一個實施例的災難恢復體系結構300的一部分的示範性方框圖。體系結構300例如可以表示在首要伺服器102與輔助伺服器104上執行的軟體例程。在所示實施例中,體系結構300包含文件系統監視器(FSM)302、文件系統事務伺服器(FSTS)304、首要服務306、輔助服務308、以及控制臺應用程式310。在不脫離本發明範圍的前提下,可以使用體系結構300的其它實施例。
文件系統監視器302用來監視並檢測對於在一個或多個文件系統312a-312c(統稱為文件系統312)中的文件的增加的改變118。文件系統312例如可以支持圖2A所示的資料庫體系結構。在特定實施例中,文件系統監視器302可以檢測對於文件系統312中的文件或註冊表進行的寫入、創建、重新命名、以及刪除操作。當文件系統監視器302檢測到增加的改變118時,文件系統監視器302會通知文件系統事務伺服器304。例如如果文件系統監視器302檢測到向文件添加數據塊,則文件系統監視器302可以通知文件系統事務伺服器304受影響的文件的名稱、寫入數據塊的地址、以及數據塊的大小。文件系統監視器302可以包含用來檢測在一個或多個文件系統312中的增加的改變118的任何硬體、軟體、固件、或其組合。文件系統監視器302例如可以包含由首要伺服器102中的一個或多個處理器執行的內核模式的軟體驅動器。
文件系統事務伺服器304用來接收文件系統監視器302識別的增加的改變118,並且累積增加的改變118一給定時段。例如,文件系統事務伺服器304可以在五秒窗口期間累積增加的改變118。文件系統事務伺服器304可以包含用來接收並累積增加的改變118的任何硬體、軟體、固件、或其組合。文件系統事務伺服器304例如可以包含由首要伺服器102中一個或多個處理器執行的內核模式的軟體驅動器。在具體實施例中,文件系統事務伺服器304用作為文件系統監視器302的客戶機進程。在另一實施例中,可以不進行對增加的改變118的累積,並且可以從體系結構300中省略文件系統事務伺服器304。
首要服務306與輔助服務308用來促進首要伺服器102與輔助伺服器104之間的通信。例如,首要服務306可以接收來自文件系統事務伺服器304的所累積的增加的改變118,並且將增加的改變118傳送給輔助服務308。輔助服務308可以接收來自首要服務306的增加的改變118,並且將增加的改變118寫入文件系統314。文件系統314例如可以支持圖2B所示的資料庫體系結構。首要服務306與輔助服務308可以包含用來促進首要伺服器102與輔助伺服器104之間的通信的任何硬體、軟體、固件、或其組合。首要服務306與輔助服務308例如可以包含分別由首要伺服器102與輔助伺服器104中一個或多個處理器執行的用戶模式的應用程式。
控制臺應用程式310用來提供控制系統100中災難恢復操作的接口。控制臺應用程式310例如可以允許用戶使用腳本文件控制災難恢復操作。作為特定的例子,通過使用適當的腳本命令,用戶可以重新命名或者刪除在輔助資料庫114中的數據存儲。用戶還可以使用適當的腳本命令使系統100恢復首要資料庫110。在不脫離本發明範圍的前提下,可以使用控制災難恢復操作的其它方法,例如通過使用應用程式編程接口(API)。
在一個實施例中,首要服務306和/或輔助服務308支持執行一個或多個任務。任務可以表示由首要服務306和/或輔助服務308運行的、實現某些或全部災難恢復功能的進程。例如,一個或多個複製任務可以負責在輔助資料庫114中複製對首要資料庫110進行的增加的改變118。在特定實施例中,用戶可以啟動、停止、以及控制複製任務,例如通過使用通過控制臺應用程式310輸入的適當的腳本命令。
在該實施例中,複製任務可以使用任務文件(taskfile)來在輔助資料庫114中複製增加的改變118。任務文件例如可以識別在首要資料庫110中待針對增加的改變118進行監視的文件、文件夾200-202、註冊表、和/或註冊表分支。任務文件還可以識別在首要資料庫110中待針對增加的改變118排除的、不進行監視的文件、文件夾200-202、註冊表、和/或註冊表分支。任務文件還可以識別在災難恢復操作中使用的超時參數以及其它參數。任務文件例如可以表示可以手工和/或利用標準API編程編輯的.INI文件。
在操作的一個方面,用戶可以啟動對於特定首要伺服器102的複製任務。在特定實施例中,在完全備份116開始之前可以啟動複製任務,從而有助於保證在系統100中捕獲在完全備份116期間由首要伺服器102進行的任何增加的改變118。首要服務306可以讀取任務文件並且識別需要監視哪些文件、文件夾200-202、註冊表、和/或註冊表分支。首要服務306還可以配置文件系統事務伺服器304以監視這些文件、文件夾200-202、註冊表、和/或註冊表分支。然後,文件系統事務伺服器304監視由文件系統監視器302檢測的任何增加的改變118,報告對所監視的文件、文件夾200-202、註冊表、和/或註冊表分支進行的增加的改變118,並且忽略對所排除的文件、文件夾200-202、註冊表、和/或註冊表分支進行的增加的改變118。輔助服務308可以初始化輔助資料庫114以存儲增加的改變118。例如,輔助服務308可以在適當伺服器文件夾254下創建「當前」時間戳文件夾256。首要服務306與輔助服務308也可以建立通信連結,例如通過網絡106的連結。
用戶還可以使複製任務無效(deactivate)。當發生這種情況時,首要服務306與輔助服務308可以停止傳送增加的改變118。用戶可以進行到刪除當前數據存儲,這就刪除了輔助資料庫114中的當前時間戳文件夾256。用戶還可以重新命名當前數據存儲,例如通過重新命名輔助資料庫114中的當前時間戳文件夾256,以反映日期與時間。在重新命名當前數據存儲之後,用戶可以重新啟動複製任務。這使系統100再次監視增加的改變118並在新的當前數據存儲,例如新的時間戳文件夾256中記錄增加的改變118。
已經將圖3描述為允許用戶使用控制臺應用程式310來控制系統100中的災難恢復操作。系統100還可以被配置來根據需要自動啟動與停止複製任務、重新命名數據存儲、和/或刪除數據存儲。
雖然圖3描述了災難恢復體系結構300一部分的例子,但是在不脫離本發明範圍的前提下,可以對體系結構300進行各種修改。例如,圖3中的功能劃分只是為說明目的。在不脫離本發明範圍的前提下,根據特定需求,可以相互組合或者去除各種功能組件。另外,體系結構300的組件302-310的功能可以使用任何硬體、軟體、固件、或者其組合來實現。這可以包含例如在任何適當設備中存儲的邏輯,例如隨機訪問存儲器、只讀存儲器、應用專用集成電路(ASIC)、或者現場可編程門陣列(FPGA)。
圖4為說明根據本發明一個實施例的災難恢復方法400的示範性流程圖。雖然可以針對圖1的系統100描述方法400,但是在不脫離本發明範圍的前提下,方法400可以由任何適當的系統使用。
在步驟402,系統100進行首要資料庫110中信息的完全備份116。這可以包含例如首要伺服器102將首要資料庫110中某些或全部信息傳送給備份系統112。備份系統112可以駐留在輔助伺服器102和/或其它適當平臺上。
在步驟404,系統100監視對首要資料庫110中信息進行的增加的改變118。這可以包含例如首要伺服器102識別對首要資料庫110中信息進行的增加的改變118,並且將該增加的改變118傳送給輔助伺服器104。這還可以包含輔助伺服器104在輔助資料庫114中存儲該增加的改變118。這還可以包含輔助伺服器104進行一個或多個增加的備份129,其中輔助伺服器104在備份系統112中存儲至少某些來自輔助資料庫114的增加的改變118。
在步驟406,首要資料庫110出故障。這可以包含例如首要資料庫110出現使首要資料庫110不能運行的硬體或軟體錯誤。這還可以包含首要資料庫110出現電源故障。在不脫離本發明範圍的前提下,在步驟406還可以出現資料庫故障的其它原因。在步驟408,首要資料庫110變得可以再次運行。這可以包含例如技術人員解決了硬體或軟體錯誤,恢復首要伺服器102的電源,和/或任何其它適當的解決資料庫故障的糾正措施。
在步驟410,系統100恢復首要資料庫110。這可以包含例如備份系統112將自最後一次完全備份116以來的信息傳送給首要伺服器102。這還可以包含備份系統112將來自一個或多個增加的備份120的增加的改變118傳送給首要伺服器102。這還可以包含輔助資料庫114將至少一個增加的改變118傳送給首要伺服器102。另外,這可以包含首要伺服器102使用來自輔助伺服器104的信息以恢復首要資料庫110。首要伺服器102可以將首要資料庫110恢復到在資料庫出故障時或者接近該時刻時存在的狀態,在資料庫110出故障之前存在的狀態,和/或任何其它適當的狀態。
雖然圖4顯示了災難恢復方法400的一個例子,但是在不脫離本發明範圍的前提下,可以對方法400進行各種改變。例如,系統100可以使用來自最後一次完全備份116的信息來恢復首要資料庫110,而不使用增加的改變118。例如當系統100將首要資料庫110恢復到在最後一次完全備份116時存在的狀態時,可以發生這種情況。在不脫離本發明範圍的前提下,可以對方法400進行其它改變。
圖5為說明根據本發明一個實施例的在首要伺服器102上的文件備份方法500的示範性流程圖。方法500可以例如由首要伺服器102在災難恢復操作的備份階段使用。雖然可以針對圖1的首要伺服器102描述方法500,但是在不脫離本發明範圍的前提下,方法500可以由任何其它適當的一個或多個平臺使用。
在步驟502,首要伺服器102識別在首要資料庫110中的待監視信息。這可以包含例如啟動由首要服務306和/或輔助服務308執行的複製任務。這還可以包含該複製任務訪問識別首要資料庫110中的一個或多個文件、文件夾200-202、註冊表、和/或註冊表分支的任務文件。該任務文件中的文件、文件夾200-202、註冊表、和/或註冊表分支例如可以由系統100的用戶識別。
在步驟504,首要伺服器102在完全備份116期間將所識別的信息傳送給備份系統112。這可以包含例如首要伺服器102將所識別的文件傳送給備份系統112。這還可以包含首要伺服器102將任何選定的文件夾200-202傳送給備份系統112。
在步驟506,首要伺服器102檢測一個或多個文件事件的發生。文件事件例如可以表示向資料庫110中現有的或者新的文件添加新信息,修改資料庫110中現有的信息,或者從資料庫110中刪除現有的信息。文件事件可以發生在步驟104進行的完全備份116之前、在其中、和/或在其之後。在一個實施例中,文件事件可以由文件系統接監視器302檢測。
在步驟508,首要伺服器102累積文件事件一給定時段。這可以包含例如文件系統事務伺服器304在給定時段(例如在五秒窗口期間)內從文件系統接監視器302接收多個文件事件。這還可以包含文件系統事務伺服器304將在五秒窗口期間接收的文件事件組合為一條或一系列消息。
在步驟510,首要伺服器102將文件事件傳送給輔助資料庫114,作為增加的改變118。這可以包含例如文件系統事務伺服器304將所述一條或一系列消息傳送給首要服務306,並且首要服務306將該消息傳送給輔助服務308。
在步驟512,首要伺服器102確定自最後一次完全備份116以來的時間是否超過門限。這可以包含例如首要伺服器102確定自最後一次完全備份116以來的時間是否超過由用戶設立的門限時間周期。如果自最後一次完全備份116以來的時間未超過門限,則首要伺服器102返回步驟506,以檢測另外的文件事件的發生。否則,首要伺服器102返回步驟504,以進行另一完全備份116。在特定的實施例中,首要伺服器102可以每一天或者每一周進行一次完全備份116。
雖然圖5顯示在首要伺服器102的文件備份的方法500的例子,但是在不脫離本發明範圍前提下,可以對方法500進行各種改變。例如,首要伺服器102可以監視首要資料庫102中的所有信息。在這個實施例中,在步驟502首要資料庫102不需要識別待監視的信息。另外,首要資料庫102可以將文件事件傳送給輔助伺服器104,而不用在步驟508累積文件事件。另外,首要資料庫102可以使用確定何時進行完全備份116的任何適當方法,並且不限於確定自最後一次完全備份116以來的時間是否超過門限時間。
圖6為說明根據本發明一個實施例的用於在輔助伺服器104上的文件備份的方法600的示範性流程圖。方法600可以例如由輔助伺服器104在災難恢復操作的備份階段使用。雖然針對圖1的輔助伺服器104描述方法600,但是在不脫離本發明範圍的前提下,方法600可以由任何其它適當的一個或多個平臺使用。另外,雖然針對單個首要伺服器102描述方法600,但是輔助伺服器104可以支持多個首要伺服器102。
在步驟602,輔助伺服器104在完全備份116期間接收來自首要資料庫110的備份信息。這可以包含例如輔助伺服器104通過網絡106接收來自首要伺服器102的信息。在步驟604,輔助伺服器104在備份系統112中存儲該備份信息。這可以包含例如備份系統112將來自首要資料庫110的備份信息記錄在一個或多個計算機可讀介質上,例如磁帶或者密緻盤(compact disc)上。這還可以包含輔助伺服器104初始化輔助資料庫114,例如通過刪除與伺服器102相關聯的伺服器文件夾254的任何內容。
在步驟606,輔助伺服器104接收來自首要資料庫110的增加的改變118。這可以包含例如輔助服務308從首要服務306接收包含增加的改變118的一個或多個消息。在於步驟604在備份系統112中存儲備份信息之前、在其中、和/或在其之後,可以接收增加的改變118。在步驟608,輔助伺服器104在當前數據存儲中存儲增加的改變118。這可以包含例如輔助服務308在輔助資料庫114中「當前」時間戳文件夾256內包含的一個或多個文件中存儲增加的改變118。這也可以包含輔助服務308在輔助資料庫114中創建其中存儲增加的改變118的一個或多個文件夾256-260和/或一個或多個文件。
在步驟610,輔助伺服器104確定是否發生了觸發事件。觸發事件例如可以表示經過給定時段,或者收到來自用戶的命令。如果未檢測到觸發事件,則輔助伺服器104返回步驟606,以接收並且存儲其它增加的改變118。如果輔助伺服器104檢測到觸發事件,則輔助伺服器104行進到進行增加的備份120。在步驟612,輔助伺服器104關閉並重新命名當前數據存儲。這可以包含例如輔助伺服器104重新命名輔助資料庫114中的當前時間戳文件夾256,以包含反映日期與時間的標記。在步驟614,在增加的備份120期間,輔助伺服器104在備份系統112中存儲重新命名後的數據存儲。這可以包含例如輔助資料庫114將重新命名後的時間戳文件夾256中的信息傳送給備份系統112。在步驟616,輔助伺服器104在輔助資料庫114中創建新的當前數據存儲。這可以包含例如輔助伺服器104在輔助資料庫114中創建名稱為「當前」的新的時間戳文件夾256。在步驟614發生的增加的備份120之前,在其之中、或者在其之後,輔助伺服器104可以創建新的數據存儲。在步驟618,輔助伺服器104從輔助資料庫114刪除重新命名後的數據存儲。這可以包含例如輔助伺服器104從資料庫114刪除重新命名後的時間戳文件夾256、以及該時間戳文件夾256的所有內容。輔助伺服器104返回步驟606,以接收並在新的數據存儲中存儲其它增加的改變118。
雖然圖6說明了在輔助伺服器104上的文件備份方法600的一個例子,但是在不脫離本發明範圍前提下,可以對方法600進行各種改變。例如,在另一實施例中,輔助伺服器104不進行增加的備份120。另外,雖然方法600說明在每次增加的備份120期間輔助伺服器104將單個數據存儲拷貝到備份系統112,但是在增加的備份期間輔助伺服器104可以將更多數據存儲拷貝到備份系統112。在這個實施例中,可以修改方法600以在首次觸發事件之後創建新的數據存儲,並且在第二次觸發事件之後進行增加的備份120。另外,方法600假定備份系統112與輔助資料庫114位於同一平臺上,例如輔助伺服器104。在另一實施例中,備份系統112與輔助資料庫114可位於不同平臺上,並且每個平臺可以執行所示步驟的子集。
圖7為說明根據本發明一個實施例的在輔助伺服器104上的文件恢復方法700的示範性流程圖。方法700可以例如由輔助伺服器104在災難恢復操作的恢復階段使用。雖然針對圖1的輔助伺服器104描述方法700,但是在不脫離本發明範圍的前提下,方法700可以由任何其它適當的一個或多個平臺使用。另外,雖然可以針對單個首要伺服器102描述方法700,但是輔助伺服器104也可以支持多個首要伺服器102。
在步驟702,輔助伺服器104識別時間幀。時間幀可以表示待將首要資料庫110恢復到的時間。時間幀例如可以表示首要資料庫110出故障時或者接近其的時間,在首要資料庫110出故障前的時間,和/或其它任何適當的時間。輔助伺服器104可以從用戶接收識別的時間幀,例如用戶使用客戶機108或控制臺應用程式310,或者以任何其它適當的方式。
在步驟704,輔助伺服器104將來自最後一次完全備份116的備份信息傳送給首要資料庫110。這可以包含例如備份系統112通過網絡106將來自最後一次完全備份116的備份信息傳送給首要資料庫110。
在步驟706,輔助伺服器104確定發生最後一次完全備份116的時間是否超過所識別的時間。這可以包含例如輔助伺服器104比較最後一次完全備份116開始的時間與在步驟702接收的所識別的時間。如果與最後一次完全備份116相關聯的時間超過所識別的時間,則方法700結束。輔助伺服器104不需要進行進一步動作來恢復首要資料庫110。
否則,在步驟708,輔助伺服器104選擇最早的增加的備份120。在步驟710,輔助伺服器104確定與所選擇的增加的備份120相關聯的時間是否超過所識別的時間。如果超過了,則輔助伺服器104不需要進行進一步動作來恢復首要資料庫110,並且方法700結束。否則,在步驟712,輔助伺服器104將在所選擇的增加的備份120中包含的增加的改變118傳送給首要資料庫110。這可以包含例如通過網絡106備份系統112將所選擇的增加的備份120中的增加的改變118傳送給首要伺服器102。
在步驟714,輔助伺服器104確定在備份系統112是否還餘留有其它增加的備份120需要處理。如果還餘留有另外的增加的備份120,則在步驟716,輔助伺服器104選擇下一個增加的備份120。這可以包含例如輔助伺服器104選擇在當前增加的備份120之後依次發生的下一個增加的備份120。然後,輔助伺服器104返回步驟710以確定是否應該把新的所選擇的增加的備份120中的增加的變化118傳送給首要資料庫110。
如果在步驟714沒有剩餘增加的備份120,則在步驟718輔助伺服器104選擇輔助資料庫114中最早的時間戳文件夾256。這可以包含例如輔助伺服器104識別具有最早時間戳標記的時間戳文件夾256。這也可以包含輔助伺服器104識別在與該首要資料庫110相關聯的伺服器文件夾254中的最早時間戳文件夾256。
在步驟720,輔助伺服器104確定與所選擇的時間戳文件夾256相關聯的時間是否超過所識別的時間。這可以包含例如輔助伺服器104比較所選擇的時間戳文件夾256的時間戳與所識別的時間。如果所識別的時間超過與所選擇的時間戳文件夾256相關聯的時間,則方法700結束。否則,在步驟722,輔助伺服器104將在所選擇的時間戳文件夾256中包含的增加的改變118傳送給首要資料庫110。這可以包含例如輔助伺服器104通過網絡106將增加的改變118傳送給首要資料庫110。
在步驟724,輔助伺服器104確定在輔助資料庫114中是否存在額外的時間戳文件夾256。如果沒有餘留額外的時間戳文件夾256需要處理,則方法700結束。如果還餘留有額外時間戳文件夾256,則在步驟726,輔助伺服器104選擇下一時間戳文件夾256。這可以包含例如輔助伺服器104選擇具有下一順序時間戳的時間戳文件夾256。然後,輔助伺服器104返回步驟720以處理新選擇的時間戳文件夾256。
雖然圖7說明了在輔助伺服器104上的文件恢復方法700的一個例子,但是在不脫離本發明範圍前提下,可以對方法700進行各種改變。例如,輔助伺服器104可以被編程來自動地將首要資料庫110恢復到在資料庫110出故障時或者接近該時刻時存在的狀態。在這種情況下,輔助伺服器104不需要接收時間幀或者比較收到的時間以及與最後一次完全備份116、增加的備份120、以及時間戳文件夾256相關聯的時間。另外,存儲在備份系統112和/或輔助資料庫114中的每個增加的改變118可以打上時間戳,以顯示作出該增加的改變的時間。在這個實施例中,輔助伺服器104可以比較與每個增加的改變118相關聯的時間與在步驟702收到的時間。通過這種方式,輔助伺服器104不需要將在增加的備份120和/或時間戳文件夾256中包含的所有增加的改變118傳送給首要伺服器102。另外,方法700假定備份系統112與輔助資料庫114位於同一平臺上,例如輔助伺服器104。在另一實施例中,備份系統112與輔助資料庫114可位於不同平臺上,並且每個平臺可以執行所示步驟的子集。另外,圖7說明了輔助伺服器104利用所識別的時間確定是否應該將信息傳送給首要伺服器102。在另一實施例中,輔助伺服器104可以將所有適當信息傳送給首要伺服器102,並且首要伺服器102利用所識別的時間確定是否應該將信息傳送給首要伺服器102。
圖8為說明根據本發明一個實施例的在首要伺服器102上的文件恢復方法800的示範性流程圖。方法800可以例如由首要伺服器102在災難恢復操作的恢復階段使用。雖然針對圖1的首要伺服器102描述方法800,但是在不脫離本發明範圍的前提下,方法800可以由任何其它適當的一個或多個平臺使用。
在步驟802,首要伺服器102接收來自備份系統112的備份信息。這可以包含例如首要伺服器102接收在首要資料庫110出故障之前發生的最後一次完全備份116期間存儲的信息。在步驟804,首要伺服器102在首要資料庫110中存儲該備份信息。這可以包含例如首要伺服器102在首要資料庫110中適當文件夾200-202中存儲從備份系統112接收的備份信息。這就將首要資料庫110恢復到最後一次完全備份116時或者接近該時刻時存在的狀態。
在步驟806,首要伺服器102接收來自備份系統112的一個或多個增加的改變118。該增加的改變118可能例如已經在一個或多個增加的備份120期間被存儲在備份系統112中。在步驟808,首要伺服器102重新創建對在首要資料庫110中存儲的信息的增加的改變118。這可以包含例如首要伺服器102接收增加的改變118並且對首要資料庫110中的信息進行同樣的改變。這就將首要資料庫110恢復到最後一次增加的備份120時或者接近該時刻時存在的狀態。
在步驟810,首要伺服器102接收來自輔助資料庫114的一個或多個增加的改變118。這可以包含例如輔助資料庫114通過網絡106將來自一個或多個時間戳文件夾256的增加的改變118傳送給首要伺服器102。在步驟812,首要伺服器102在首要資料庫110中重新創建從輔助資料庫114接收的增加的改變118。這就將首要資料庫110恢復到首要資料庫110出故障時或者接近該時刻時存在的狀態。
雖然圖8顯示在首要伺服器102上的文件恢復方法800的一個例子,但是在不脫離本發明範圍前提下,可以對方法800進行各種改變。例如,方法800被說明為將首要資料庫110恢復到資料庫出故障時或者接近該時刻時存在的狀態。還可以將首要資料庫110恢復到資料庫出故障之前存在的狀態。在一個實施例中,首要伺服器102可以利用步驟802-804恢復首要資料庫110,而不使用步驟806-812。首要伺服器102也可以利用步驟802-808恢復首要資料庫110,而不使用步驟810-812。在不脫離本發明範圍前提下,可以使用利用所示步驟子集的其它實施例。
雖然針對優選實施例以及一般有關的方法描述了本發明,但是本領域技術人員應該清楚可以對優選實施例及方法進行各種變化與修改。因此,以上對示範性優選實施例的描述不限定或限制本發明。在不脫離權利要求所限定的本發明的範圍的前提下,可以有各種改變、替換、以及修改。
權利要求
1.一種災難恢復方法,包括傳送用以在第一資料庫中存儲的增加的改變,該增加的改變表示第二資料庫中至少一部分信息的變化;接收備份信息與增加的改變中的至少一個,該備份信息包括先前在備份系統中存儲的、來自第二資料庫的信息的至少一部分;以及使用備份信息與增加的改變中的至少一個來恢復第二資料庫。
2.如權利要求1所述的方法,其中恢復第二資料庫包括在第二資料庫中存儲備份信息;以及實現對第二資料庫中至少一部分信息的增加的改變。
3.如權利要求1所述的方法,其中接收增加的改變包括從備份系統接收第一增加的改變;以及從第一資料庫接收第二增加的改變。
4.如權利要求3所述的方法,其中恢復第二資料庫包括在第二資料庫中存儲備份信息;實現對第二資料庫中至少一部分信息的第一增加的改變;以及在實現第一增加的改變之後,實現對第二資料庫中至少一部分信息的第二增加的改變。
5.如權利要求3所述的方法,還包括接收恢復時間;以及其中恢復第二資料庫包括在第二資料庫中存儲備份信息;當與第一增加的改變相關聯的第一時間未超過恢復時間時,實現對第二資料庫中至少一部分信息的第一增加的改變;以及當與第二增加的改變相關聯的第二時間未超過恢復時間時,實現對第二資料庫中至少一部分信息的第二增加的改變。
6.如權利要求1所述的方法,其中傳送用以在第一資料庫中存儲的增加的改變包括檢測在至少一個文件系統中的增加的改變;在多個時間窗口的每一個中累積檢測到的多個增加的改變;以及在每個時間窗口之後,傳送用以在第一資料庫中存儲的所累積的增加的改變。
7.如權利要求1所述的方法,還包括傳送用以在備份系統中作為備份信息存儲的來自第二資料庫的至少一部分信息。
8.如權利要求7所述的方法,還包括在向備份系統傳送來自第二資料庫的至少一部分信息之前,開始複製任務,該複製任務用來檢測並傳送用以在第一資料庫中存儲的增加的改變。
9.如權利要求8所述的方法,還包括訪問任務文件以識別以下至少之一為增加的改變要進行監視的第一文件、為增加的改變要進行監視的第一文件夾、為增加的改變要進行監視的第一註冊表、要從監視中排除的第二文件、要從監視中排除的第二文件夾、以及要從監視中排除的第二註冊表。
10.如權利要求1所述的方法,其中增加的改變表示第二資料庫中至少一部分文件或註冊表的改變。
11.一種災難恢復系統,包括至少一個計算機可讀介質;以及在該至少一個計算機可讀介質上編碼的邏輯,當被執行時用以傳送用以在第一資料庫中存儲的增加的改變,該增加的改變表示第二資料庫中至少一部分信息的變化;接收備份信息與增加的改變中的至少一個,該備份信息包括先前在備份系統中存儲的、來自第二資料庫的信息的至少一部分;以及使用備份信息與增加的改變中的至少一個來恢復第二資料庫。
12.如權利要求11所述的系統,其中所述邏輯用來通過以下步驟恢復第二資料庫在第二資料庫中存儲備份信息;以及實現對第二資料庫中至少一部分信息的增加的改變。
13.如權利要求11所述的系統,其中所述邏輯用來通過以下步驟接收增加的改變從備份系統接收第一增加的改變;以及從第一資料庫接收第二增加的改變。
14.如權利要求13所述的系統,其中所述邏輯用來通過以下步驟恢復第二資料庫在第二資料庫中存儲備份信息;實現對第二資料庫中至少一部分信息的第一增加的改變;以及在實現第一增加的改變之後,實現對第二資料庫中至少一部分信息的第二增加的改變。
15.如權利要求13所述的系統,其中所述邏輯還用來接收恢復時間;以及所述邏輯用來通過以下步驟恢復第二資料庫在第二資料庫中存儲備份信息;當與第一增加的改變相關聯的第一時間未超過恢復時間時,實現對第二資料庫中至少一部分信息的第一增加的改變;以及當與第二增加的改變相關聯的第二時間未超過恢復時間時,實現對第二資料庫中至少一部分信息的第二增加的改變。
16.如權利要求11所述的系統,其中所述邏輯還用來傳送用以在備份系統中作為備份信息存儲的來自第二資料庫的至少一部分信息。
17.一種災難恢復系統,包括第一資料庫,用來存儲信息;以及一個或多個處理器,共同用來傳送用以在第二資料庫中存儲的增加的改變,該增加的改變表示第一資料庫中至少一部分信息的變化;接收備份信息與增加的改變中的至少一個,該備份信息包括先前在備份系統中存儲的、來自第一資料庫的信息的至少一部分;以及使用備份信息與增加的改變中的至少一個來恢復第一資料庫。
18.如權利要求17所述的系統,其中所述一個或多個處理器共同用來通過以下步驟恢復第一資料庫在第一資料庫中存儲備份信息;以及實現對第一資料庫中至少一部分信息的增加的改變。
19.如權利要求17所述的系統,其中所述一個或多個處理器共同用來通過以下步驟接收增加的改變從備份系統接收第一增加的改變;以及從第一資料庫接收第二增加的改變。
20.如權利要求19所述的系統,其中所述一個或多個處理器共同用來通過以下步驟恢復第一資料庫在第一資料庫中存儲備份信息;實現對第一資料庫中至少一部分信息的第一增加的改變;以及在實現第一增加的改變之後,實現對第一資料庫中至少一部分信息的第二增加的改變。
21.如權利要求19所述的系統,其中所述一個或多個處理器還共同用來接收恢復時間;以及所述一個或多個處理器共同用來通過以下步驟恢復第一資料庫在第一資料庫中存儲備份信息;當與第一增加的改變相關聯的第一時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第一增加的改變;以及當與第二增加的改變相關聯的第二時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第二增加的改變。
22.如權利要求17所述的系統,其中所述一個或多個處理器還共同用來傳送周以在備份系統中作為備份信息存儲的來自第一資料庫的至少一部分信息。
23.一種災難恢復系統,包括文件系統監視器,用來檢測至少一個第一文件系統中信息的多個增加的改變;事務累積器,用來接收多個增加的改變並且累積在確定時段中收到的多個增加的改變;以及周來執行複製任務的服務,該複製任務用來接收所累積的增加的改變,並且傳送用以在第二文件系統中存儲的所累積的增加的改變,其中可以利用備份信息與增加的改變中的至少一個恢復所述至少一個第一文件系統,所述備份信息包括先前在備份系統中存儲的、來自所述至少一個第一文件系統的信息的至少一部分。
24.一種災難恢復系統,包括用來傳送增加的改變以在第一資料庫中存儲的部件,該增加的改變表示第二資料庫中至少一部分信息的變化;用來接收備份信息與增加的改變中的至少一個的部件,該備份信息包括先前在備份系統中存儲的、來自第二資料庫的信息的至少一部分;以及用來使用備份信息與增加的改變中的至少一個來恢復第二資料庫的部件。
25.一種災難恢復方法,包括接收表示第一資料庫中至少一部分信息的變化的增加的改變;在第二資料庫中存儲該增加的改變;以及傳送增加的改變以在恢復第一資料庫時使用,第一資料庫通過使用備份信息與增加的改變中的至少一個來恢復,該備份信息包括先前在備份系統中存儲的、來自第一資料庫的信息的至少一部分。
26.如權利要求25所述的方法,其中所述增加的改變包括第一增加的改變,並且還包括接收第二增加的改變;在第二資料庫中存儲第二增加的改變;以及傳送第二增加的改變以在備份系統中存儲,該備份系統用來傳送第二增加的改變以在恢復第一資料庫時使用。
27.如權利要求26所述的方法,其中在第二資料庫中存儲第一增加的改變包括在第一文件夾中存儲第一增加的改變;以及傳送第二增加的改變以在備份系統中存儲包括傳送包括用以在備份系統中存儲的第二增加的改變的第二文件夾的至少一部分。
28.如權利要求27所述的方法,還包括在傳送用以在備份系統中存儲的第二文件夾的至少一部分之前,將第二文件夾從舊名稱重新命名為新名稱,該新文件名包括時間戳;以及創建第一文件夾,該第一文件夾具有第二文件夾的舊名稱。
29.如權利要求25所述的方法,其中增加的改變與位於第一資料庫中第一文件系統文件夾中的第一文件相關聯,該第一文件系統文件夾位於第一驅動器文件夾,該第一文件具有文件名;並且在第二資料庫中存儲增加的改變包括在位於第二文件系統文件夾中的第二文件中存儲增加的改變,該第二文件系統文件夾與第一文件系統文件夾相關聯,該第二文件系統文件夾位於與第一驅動器文件夾相關聯的第二驅動器文件夾,該第二文件具有文件名。
30.如權利要求29所述的方法,其中在第二文件中存儲增加的改變包括確定是否存在第二驅動器系統文件夾;如果不存在,則創建第二驅動器系統文件夾;確定是否存在第二文件系統文件夾;如果不存在,則創建第二文件系統文件夾;確定是否存在第二文件;以及如果不存在,則創建第二文件。
31.如權利要求25所述的方法,其中增加的改變存儲於多個時間戳文件夾之一中,時間戳文件夾之一表示當前時段,剩餘時間戳文件夾中的至少一個表示至少一個先前時段。
32.如權利要求31所述的方法,還包括接收恢復時間;以及其中傳送增加的改變以在恢復第一資料庫時使用包括確定與其中存儲增加的改變的時間戳文件夾相關聯的時間是否超過恢復時間;以及當與時間戳文件夾相關聯的時間未超過恢復時間時,傳送增加的改變以在恢復第一資料庫時使用。
33.如權利要求25所述的方法,還包括接收備份信息;以及在備份系統中存儲備份信息。
34.如權利要求25所述的方法,其中所述增加的改變表示第一資料庫中至少一部分文件或註冊表的變化。
35.一種災難恢復系統,包括至少一個計算機可讀介質;以及在該至少一個計算機可讀介質上編碼的邏輯,當被執行時用以接收表示第一資料庫中至少一部分信息的變化的增加的改變;在第二資料庫中存儲該增加的改變;以及傳送增加的改變以在恢復第一資料庫時使用,第一資料庫通過使用備份信息與增加的改變中的至少一個來恢復,該備份信息包括先前在備份系統中存儲的、來自第一資料庫的信息的至少一部分。
36.如權利要求35所述的系統,其中所述增加的改變包括第一增加的改變,並且所述邏輯還用來接收第二增加的改變;在第二資料庫中存儲第二增加的改變;以及傳送第二增加的改變以在備份系統中存儲,該備份系統用來傳送第二增加的改變以在恢復第一資料庫時使用。
37.如權利要求36所述的系統,其中所述邏輯用來在第二資料庫中的第一文件夾中存儲第一增加的改變;所述邏輯用來在第二資料庫中的第二文件夾中存儲第二增加的改變;所述邏輯用來通過傳送第二文件夾的至少一部分以在備份系統中存儲來傳送第二增加的改變以在備份系統中存儲;以及所述邏輯還用來在傳送第二文件夾的至少一部分以在備份系統中存儲之前,將第二文件夾從舊名稱重新命名為新名稱,該新名稱包括時間戳;以及創建第一文件夾,該第一文件夾具有第二文件夾的舊名稱。
38.如權利要求35所述的系統,其中增加的改變與位於第一資料庫中第一文件系統文件夾中的第一文件相關聯,該第一文件系統文件夾位於第一驅動器文件夾,該第一文件具有文件名;並且所述邏輯用來通過以下步驟存儲增加的改變確定在第二資料庫中是否存在與第一驅動器系統文件夾相關聯的第二驅動器系統文件夾;如果不存在,則創建第二驅動器系統文件夾;確定在第二資料庫中是否存在與第一文件系統文件夾相關聯的第二文件系統文件夾;如果不存在,則創建第二文件系統文件夾;確定是否存在具有所述文件名的第二文件;如果不存在,則創建第二文件;以及在第二文件中存儲增加的改變。
39.如權利要求35所述的系統,其中增加的改變存儲於多個時間戳文件夾之一,時間戳文件夾之一表示當前時段,剩餘時間戳文件夾中的至少一個表示至少一個先前時段;所述邏輯還用來接收恢復時間;以及所述邏輯用來通過以下步驟傳送增加的改變以在恢復第一資料庫時使用確定與其中存儲增加的改變的時間戳文件夾相關聯的時間是否超過恢復時間;以及當與時間戳文件夾相關聯的時間未超過恢復時間時,傳送增加的改變以在恢復第一資料庫時使用。
40.如權利要求35所述的系統,其中所述邏輯還用來接收備份信息;以及在備份系統中存儲備份信息。
41.一種災難恢復系統,包括第一資料庫,用來存儲增加的改變;以及一個或多個處理器,共同用來接收增加的改變,該增加的改變表示第二資料庫中至少一部分信息的變化;在第一資料庫中存儲增加的改變;以及傳送該增加的改變以在恢復第二資料庫時使用,第二資料庫使用備份信息與增加的改變中的至少一個來恢復,增加的改變包括先前在備份系統中存儲的、來自第二資料庫的至少一部分信息。
42.如權利要求41所述的系統,其中所述增加的改變包括第一增加的改變;並且所述一個或多個處理器還共同用來接收第二增加的改變;在第一資料庫中存儲第二增加的改變;以及傳送第二增加的改變以在備份系統中存儲,該備份系統用來傳送第二增加的改變以在恢復第二資料庫時使用。
43.如權利要求42所述的系統,其中所述一個或多個處理器共同用來在第一資料庫中的第一文件夾中存儲第一增加的改變;所述一個或多個處理器共同用來在第一資料庫中的第二文件夾中存儲第二增加的改變;所述一個或多個處理器共同用來通過傳送第二文件夾的至少一部分以在備份系統中存儲來傳送第二增加的改變以在備份系統中存儲;以及所述一個或多個處理器還共同用來在傳送第二文件夾的至少一部分以在備份系統中存儲之前,將第二文件夾從舊名稱重新命名為新名稱,該新名稱包括時間戳;以及創建第一文件夾,該第一文件夾具有第二文件夾的舊名稱。
44.如權利要求41所述的系統,其中增加的改變與位於第二資料庫中第一文件系統文件夾中的第一文件相關聯,該第一文件系統文件夾位於第一驅動器文件夾,該第一文件具有文件名;並且所述一個或多個處理器共同用來通過以下步驟存儲增加的改變確定在第一資料庫中是否存在與第一驅動器系統文件夾相關聯的第二驅動器系統文件夾;如果不存在,則創建第二驅動器系統文件夾;確定在第一資料庫中是否存在與第一文件系統文件夾相關聯的第二文件系統文件夾;如果不存在,則創建第二文件系統文件夾;確定是否存在具有所述文件名的第二文件;如果不存在,則創建第二文件;以及在第二文件中存儲增加的改變。
45.如權利要求41所述的系統,其中增加的改變存儲於多個時間戳文件夾之一,時間戳文件夾之一表示當前時段,剩餘時間戳文件夾中的至少一個表示至少一個先前時段;所述一個或多個處理器還共同用來接收恢復時間;以及所述一個或多個處理器共同用來通過以下步驟傳送增加的改變以在恢復第二資料庫時使用確定與其中存儲增加的改變的時間戳文件夾相關聯的時間是否超過恢復時間;以及當與時間戳文件夾相關聯的時間未超過恢復時間時,傳送增加的改變以在恢復第二資料庫時使用。
46.如權利要求41所述的系統,其中所述一個或多個處理器還共同用來接收備份信息;以及在備份系統中存儲備份信息。
47.一種災難恢復系統,包括用來執行複製任務的服務,該複製任務用來接收表示至少一個第一文件系統中至少一部分信息的變化的增加的改變,該複製任務還用來在第二文件系統中存儲增加的改變,該複製任務還用來傳送增加的改變以在恢復所述至少一個第一文件系統時使用,所述至少一個第一文件系統使用備份信息與增加的改變中的至少一個來恢復,該備份信息包括先前存儲在備份系統中的、來自所述至少一個第一文件系統的至少一部分信息;以及用來控制該複製任務的接口。
48.一種災難恢復系統,包括用來接收表示資料庫中至少一部分信息的變化的增加的改變的部件;用來存儲增加的改變的部件;以及用來傳送增加的改變以在恢復資料庫時使用的部件,該資料庫使用備份信息與增加的變化中的至少一個來恢復,該備份信息包括先前存儲在備份系統中的來自資料庫的至少一部分信息。
49.一種災難恢復方法,包括接收包括來自第一資料庫的至少一部分信息的備份信息;在備份系統中存儲備份信息;接收來自第二資料庫的增加的改變,該增加的改變表示第一資料庫中至少一部分信息的變化;在備份系統中存儲增加的改變;以及傳送增加的改變與備份信息以在恢復第一資料庫時使用。
50.如權利要求49所述的方法,還包括接收增加的改變以在第二資料庫中存儲;在第二資料庫中存儲增加的改變;以及傳送來自第二資料庫的增加的改變以在備份系統中存儲。
51.一種災難恢復系統,包括至少一個計算機可讀介質;以及在該至少一個計算機可讀介質上編碼的邏輯,當被執行時用以接收包括來自第一資料庫的至少一部分信息的備份信息;在備份系統中存儲備份信息;接收來自第二資料庫的增加的改變,該增加的改變表示第一資料庫中至少一部分信息的變化;在備份系統中存儲增加的改變;以及傳送增加的改變與備份信息以在恢復第一資料庫時使用。
52.如權利要求51所述的系統,其中所述邏輯還用來接收增加的改變以在第二資料庫中存儲;在第二資料庫中存儲增加的改變;以及傳送來自第二資料庫的增加的改變以在備份系統中存儲。
53.一種災難恢復系統,包括用來存儲備份信息的備份系統;以及一個或多個處理器,共同用來接收包括來自第一資料庫的至少一部分信息的備份信息;在備份系統中存儲備份信息;接收來自第二資料庫的增加的改變,該增加的改變表示第一資料庫中至少一部分信息的變化;在備份系統中存儲增加的改變;以及傳送增加的改變與備份信息以在恢復第一資料庫時使用。
54.如權利要求53所述的系統,還包括第二資料庫,並且其中所述一個或多個處理器還共同用來接收增加的改變以在第二資料庫中存儲;在第二資料庫中存儲增加的改變;以及傳送來自第二資料庫的增加的改變以在備份系統中存儲。
55.一種災難恢復系統,包括用來接收包括來自第一資料庫的至少一部分信息的備份信息的部件;用來接收來自第二資料庫的增加的改變的部件,該增加的改變表示第一資料庫中至少一部分信息的變化;用來存儲備份信息與增加的改變的部件;以及用來傳送增加的改變與備份信息以在恢復第一資料庫時使用的部件。
56.一種災難恢復方法,包括將來自第一資料庫的至少一部分信息作為備份信息拷貝到備份系統;在第二資料庫中存儲增加的改變,該增加的改變表示第一資料庫中至少一部分信息的變化;以及使用備份信息與增加的改變中的至少一個來恢復第一資料庫。
57.如權利要求56所述的方法,其中增加的改變包括第一增加的改變;還包括將來自第二資料庫的第二增加的改變拷貝到備份系統;以及其中恢復第一資料庫包括使用備份信息、在第二資料庫中存儲的第一增加的改變、以及在備份系統中存儲的第二增加的改變中的至少一個來恢復第一資料庫。
58.如權利要求57所述的方法,還包括接收恢復時間;以及其中恢復第一資料庫包括在第一資料庫中存儲備份信息;確定與在備份系統中存儲的第二增加的改變相關聯的第一時間是否超過恢復時間;當第一時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第二增加的改變;確定與在第二資料庫中存儲的第一增加的改變相關聯的第二時間是否超過恢復時間;以及當第二時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第一增加的改變。
59.如權利要求56所述的方法,其中第二資料庫與備份系統駐留在單個平臺上。
60.一種災難恢復系統,包括至少一個計算機可讀介質;以及在該至少一個計算機可讀介質上編碼的邏輯,當被執行時用以將來自第一資料庫的至少一部分信息作為備份信息拷貝到備份系統;在第二資料庫中存儲增加的改變,該增加的改變表示第一資料庫中至少一部分信息的變化;以及使用備份信息與增加的改變中的至少一個來恢復第一資料庫。
61.如權利要求60所述的系統,其中增加的改變包括第一增加的改變;所述邏輯還用來將來自第二資料庫的第二增加的改變拷貝到備份系統;以及所述邏輯用來使用備份信息、在第二資料庫中存儲的第一增加的改變、以及在備份系統中存儲的第二增加的改變中的至少一個來恢復第一資料庫。
62.如權利要求61所述的系統,其中所述邏輯還用來接收恢復時間;以及所述邏輯用來通過以下步驟恢復第一資料庫在第一資料庫中存儲備份信息;確定與在備份系統中存儲的第二增加的改變相關聯的第一時間是否超過恢復時間;當第一時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第二增加的改變;確定與在第二資料庫中存儲的第一增加的改變相關聯的第二時間是否超過恢復時間;以及當第二時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第一增加的改變。
63.如權利要求60所述的系統,其中第二資料庫與備份系統駐留在單個平臺上。
64.一種災難恢復系統,包括用來存儲信息的第一資料庫;用來存儲備份信息的備份系統,該備份信息包括來自第一資料庫的至少一部分信息;用來存儲表示第一資料庫中至少一部分信息的變化的增加的改變的第二資料庫;以及一個或多個處理器,共同用來使用備份信息與增加的改變中的至少一個來恢復第一資料庫。
65.如權利要求64所述的系統,其中所述增加的改變包括第一增加的改變;所述一個或多個處理器還共同用來將來自第二資料庫的第二增加的改變拷貝到備份系統;以及所述一個或多個處理器共同用來使用備份信息、在第二資料庫中存儲的第一增加的改變、以及在備份系統中存儲的第二增加的改變中的至少一個來恢復第一資料庫。
66.如權利要求65所述的系統,其中所述一個或多個處理器還共同用來接收恢復時間;以及所述一個或多個處理器共同用來通過以下步驟恢復第一資料庫在第一資料庫中存儲備份信息;確定與在備份系統中存儲的第二增加的改變相關聯的第一時間是否超過恢復時間;當第一時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第二增加的改變;確定與在第二資料庫中存儲的第一增加的改變相關聯的第二時間是否超過恢復時間;以及當第二時間未超過恢復時間時,實現對第一資料庫中至少一部分信息的第一增加的改變。
67.如權利要求64所述的系統,其中第二資料庫與備份系統駐留在單個平臺上。
全文摘要
一種災難恢復方法包括將來自第一資料庫的至少一部分信息作為備份信息拷貝到備份系統。該方法還包括在第二資料庫中存儲增加的改變。該增加的改變表示第一資料庫中至少一部分信息的變化。該方法還包括使用備份信息與增加的改變中的至少一個來恢復第一資料庫。
文檔編號G06F11/00GK1659522SQ03812702
公開日2005年8月24日 申請日期2003年4月11日 優先權日2002年4月19日
發明者安德魯·M·H·貝蒂 申請人:電腦聯合想像公司