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

執(zhí)行增量sql服務(wù)器數(shù)據(jù)庫備份的方法和系統(tǒng)的制作方法

文檔序號:6362644閱讀:174來源:國知局
專利名稱:執(zhí)行增量sql服務(wù)器數(shù)據(jù)庫備份的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明總體上涉及數(shù)據(jù)庫備份,并且尤其涉及一種用于執(zhí)行SQL服務(wù)器數(shù)據(jù)庫的增量備份的方法和系統(tǒng)。
背景技術(shù)
數(shù)據(jù)庫系統(tǒng)(如微軟公司 的結(jié)構(gòu)化查詢語言(SQL)服務(wù)器數(shù)據(jù)庫系統(tǒng))包含大量的由多種軟件應(yīng)用程序生成和使用的信息。由于存儲在數(shù)據(jù)庫中的信息的重要性,數(shù)據(jù)庫系統(tǒng)提供了備份和恢復由該系統(tǒng)所管理的數(shù)據(jù)庫的機制。備份機制可以為數(shù)據(jù)庫創(chuàng)建一份完整副本,并且恢復機制可以利用該副本來覆蓋數(shù)據(jù)庫。數(shù)據(jù)庫系統(tǒng)還能夠回放事務(wù)以便恢復數(shù)據(jù)庫。這種數(shù)據(jù)庫系統(tǒng)可以記錄所有的事務(wù),并使用這些事務(wù)通過開始于一個已知的先前狀態(tài)并應(yīng)用該狀態(tài)之后出現(xiàn)的事務(wù)而將數(shù)據(jù)庫恢復到一個特定狀態(tài)。數(shù)據(jù)庫系統(tǒng)還可以提供一種快照機制,該快照機制允許將數(shù)據(jù)庫的狀態(tài)保存在一個“快照”中。典型地,獲取快照在執(zhí)行完全備份之前進行。相比于執(zhí)行流備份,執(zhí)行快照是將SQL服務(wù)器的中斷最小化的一個途徑。微軟SQL服務(wù)器支持快照備份和恢復技術(shù)??煺諅浞菔且环N幾乎瞬時創(chuàng)建的專用備份。各種已知的技術(shù)都可以創(chuàng)建快照,包括只復制備份、拆分鏡像、創(chuàng)建存儲裝置的副本的專用硬件以及其他方法??煺諅浞菘梢宰钚』蛉∠褂肧QL的資源以完成備份。這可以允許SQL服務(wù)器的可利用性在執(zhí)行備份操作時受到最小的影響。數(shù)據(jù)庫系統(tǒng)出于各種原因而使用快照??煺盏囊粋€典型用法是在不用長時間斷開對數(shù)據(jù)庫的訪問的情況下副本數(shù)據(jù)庫。執(zhí)行快照后,數(shù)據(jù)庫系統(tǒng)然后就可以通過優(yōu)化數(shù)據(jù)庫的快照來副本數(shù)據(jù)庫。這樣,當主數(shù)據(jù)庫處于動態(tài)時,數(shù)據(jù)庫系統(tǒng)就執(zhí)行了一次主數(shù)據(jù)庫的完全備份。一般而言,快照記錄某個時間點上的數(shù)據(jù)庫狀態(tài)。也就是說,快照可用于提供實時數(shù)據(jù)庫的時間點映像。于是利用快照副本可以執(zhí)行額外的操作,而不會影響實時數(shù)據(jù)庫的性能。除了減少動態(tài)SQL服務(wù)器數(shù)據(jù)庫的停機時間外,另一個目的是減少備份存儲利用率。為了實現(xiàn)這個目的,經(jīng)常進行差異備份而非完全備份。執(zhí)行差異備份利用了 SQL服務(wù)器數(shù)據(jù)庫的共有特點-典型地,數(shù)據(jù)庫中只有很少比率的數(shù)據(jù)在連續(xù)的備份之間發(fā)生變化。 由于只有部分數(shù)據(jù)實際上在備份之間發(fā)生變化,這就提高了備份的效率以進行差異備份而非完全備份。通過限制數(shù)據(jù)庫的停機時間,可以減少完成備份的必要時間,并且通過縮減存儲備份所要求的存儲量,還可以減少存儲在備份中的數(shù)據(jù)量。SQL服務(wù)器維護帶有信息的位圖,在該位圖上一些盤區(qū)自上次完全備份后已經(jīng)發(fā)生變化。該映射被稱為差異變化映射(DCM),SQL服務(wù)器使用DCM執(zhí)行差異備份。DCM跟蹤上一個完全數(shù)據(jù)庫備份后已經(jīng)變化的盤區(qū)。盤區(qū)是八個物理上連續(xù)的頁面的集合并且可以用于有效地管理頁面。DCM是一個位圖,在該位圖上每個位表示一個單獨的盤區(qū)。位圖的組織方式是如果一個盤區(qū)的二進制位為1,則該盤區(qū)自上次完全備份后已經(jīng)被修改過,而如果一個盤區(qū)的二進制位為0,則該盤區(qū)未被修改過。
SQL服務(wù)器還維護分配映射以記錄盤區(qū)到數(shù)據(jù)庫中的對象的分配。分配映射之一是索引分配映射(IAM)。IAM包含關(guān)于表或索引所使用的盤區(qū)的信息。分配映射的另一種是全局分配映射(GAM)。GAM包含關(guān)于已經(jīng)分配了哪些盤區(qū)的信息。分配映射的另一種是共享的全局分配映射(SGAM)。SGAM跟蹤具有至少一個未用頁面的混合盤區(qū)。還有一種跟蹤自由空間的方法,該自由空間被稱為頁面自由空間(PFS)頁面。PFS頁面記錄每個頁面的分配狀態(tài)(例如是否已經(jīng)分配了各個頁面)以及每個頁面上的自由空間量。管理SQL數(shù)據(jù)庫的常用技術(shù)是向數(shù)據(jù)庫預先分配額外的空間以給其擴展的余地。 當數(shù)據(jù)庫文件由SQL服務(wù)器裝載時,并且當數(shù)據(jù)庫文件的大小需要增加到超出分配給它的容量以容納新的事務(wù)時,增加數(shù)據(jù)庫的大小就是一種耗時的處理。因此,SQL數(shù)據(jù)庫的大小通常是遠大于它當前存儲的數(shù)據(jù)量。然而,當執(zhí)行完全備份時,分配給數(shù)據(jù)庫的所有空間 (即使現(xiàn)在并未使用它)也將被備份,從而增加了備份的大小。另外,如果將表或其他對象從數(shù)據(jù)庫刪除,完全備份仍然會備份已刪除的表或?qū)ο笏紦?jù)的所有空間。SQL服務(wù)器可以使用差異備份以減少備份的大小,但差異備份存在一些缺點。例如,差異備份必須被恢復到數(shù)據(jù)庫的實時實例中,這將導致數(shù)據(jù)庫的停機時間。SQL服務(wù)器還支持日志備份以備份已發(fā)生的事項列表;如同差異備份一樣,在恢復過程中需要將日志備份回放到數(shù)據(jù)庫的實時實例中。優(yōu)選的是準備一個時間點數(shù)據(jù)庫文件的完全副本以備恢復,而不需要SQL服務(wù)器的任何協(xié)助。除了執(zhí)行差異或日志備份,另一種減少數(shù)據(jù)庫大小的途徑是進行增量備份。然而, SQL服務(wù)器目前并不支持數(shù)據(jù)庫的增量備份。因此,所需要的是利用快照和SQL服務(wù)器維護的數(shù)據(jù)跟蹤機制來執(zhí)行增量備份同時還保持從增量備份進行快速有效恢復的能力的方法。鑒于上述內(nèi)容,執(zhí)行SQL數(shù)據(jù)庫的增量備份的方法和機制是所希望的。

發(fā)明內(nèi)容
本文設(shè)想了執(zhí)行SQL服務(wù)器數(shù)據(jù)庫的增量備份的方法和機制的各種實施方案。在一個實施方案中,可以執(zhí)行數(shù)據(jù)庫的一次完全備份。在該完全備份后,后續(xù)備份可以是增量備份。為執(zhí)行增量備份,首先向SQL服務(wù)器傳送一條請求以執(zhí)行數(shù)據(jù)庫的完全備份。SQL服務(wù)器可能表現(xiàn)得如同正在執(zhí)行一次數(shù)據(jù)庫完全備份一樣,盡管實際上執(zhí)行增量備份。下一步,獲取數(shù)據(jù)庫的一個快照??梢詮脑摽煺諜z索一個或多個映射。該一個或多個映射可以包括用于標識自從前一次完全備份、前一次快照或前一次增量備份以來就已經(jīng)發(fā)生變化盤區(qū)的信息。在標識變化的盤區(qū)之后,可以從該快照檢索變化的盤區(qū)并將其作為增量備份文件存儲在一個備份存儲裝置中。然后,可以舍棄該快照。在獲取數(shù)據(jù)庫快照之后的某個點上,SQL服務(wù)器可以重新設(shè)置DCM位圖的實時副本,就像執(zhí)行一次完全備份操作一樣。在另一個實施方案中,標識變化的盤區(qū)之后,可以檢索并讀取一個或多個分配映射,以便確定是否變化的盤區(qū)中的每一個都分配給一個表或其他對象。如果一個變化的盤區(qū)未分配,則該變化的盤區(qū)不會存儲為增量備份的一部分。還可以將一個或多個映射存儲為增量備份的一部分。該方法進一步包括對多個增量備份和快照重復上述步驟。在另一個實施方案中,先前存儲的完全備份可以被轉(zhuǎn)換為一個部分備份,例如增量備份或差異備份。在一個實施方案中,可以從一個存儲裝置中檢索所存儲的數(shù)據(jù)庫快照。 該存儲的快照可以對應(yīng)于在數(shù)據(jù)庫上執(zhí)行的前一個完全備份操作。所存儲的完全備份可以被轉(zhuǎn)換成一個增量備份文件以降低該具體備份的存儲利用率。為了將所存儲的快照轉(zhuǎn)換成為一個增量備份文件,可以從快照中檢索用于標識變化的盤區(qū)的一個或多個映射。可替代地,該標識變化的盤區(qū)的一個或多個映射可以與快照分開存儲。然后,可以從所存儲的快照中檢索變化的盤區(qū)并將其作為增量備份文件存儲在備份存儲裝置中。可以舍棄備份中未發(fā)生變化的數(shù)據(jù)。可替代地,可以使用其他相似的技術(shù)將所存儲的完全備份文件轉(zhuǎn)換成一個增量備份文件。在另一個實施方案中,在一個或多個增量備份之后可以請求一個恢復操作。一種媒質(zhì)服務(wù)器可以從備份存儲裝置中檢索前一個完全備份文件并將該前一個完全備份文件寫到一個存儲裝置中,例如與媒質(zhì)服務(wù)器或SQL服務(wù)器相關(guān)聯(lián)的磁盤或其他存儲裝置。該媒質(zhì)服務(wù)器可以執(zhí)行此步驟,而不要求來自SQL服務(wù)器的任何輸入。這可以允許SQL服務(wù)器繼續(xù)執(zhí)行作為數(shù)據(jù)庫的常規(guī)功能的一部分的操作,例如處理新的事務(wù)。接著,該媒質(zhì)服務(wù)器可以檢索一個或多個增量備份文件或者將增量備份文件中變化的盤區(qū)寫到完全備份文件內(nèi)適當?shù)奈恢弥小T撁劫|(zhì)服務(wù)器可以將變化的盤區(qū)從多個增量備份文件寫到完全備份文件中;該多個增量備份文件可以對應(yīng)于在完全備份操作之后執(zhí)行的多個增量備份。媒質(zhì)服務(wù)器還可以按照多個增量備份文件的創(chuàng)建順序而寫它們中變化的盤區(qū),這樣首先寫最舊的增量備份文件中變化的盤區(qū),并且最后寫最新的增量備份文件中變化的盤區(qū)。媒質(zhì)服務(wù)器可以通過讀取作為增量備份操作的一部分而存儲的一個或多個映射來確定發(fā)生變化的盤區(qū)在卸載的完全備份文件中屬于哪個位置。媒質(zhì)服務(wù)器可以將變化的盤區(qū)寫回到所卸載的完全備份文件內(nèi)部,而不要求來自SQL服務(wù)器的任何輸入。鑒于以下本文提出方法的詳細描述,這些以及其他特征和優(yōu)點對本領(lǐng)域的普通技術(shù)人員將變得顯而易見。


通過參考以下描述并結(jié)合附圖,本方法和機制的上述和進一步的優(yōu)點可以得到更好的理解,在附圖中圖I的示圖展示了根據(jù)一個或多個實施方案的一個數(shù)據(jù)庫檔案系統(tǒng)。圖2展示了創(chuàng)建快照的一個數(shù)據(jù)庫服務(wù)器。圖3展示了根據(jù)一個或多個實施方案的一個快照映像。圖4展示了根據(jù)一個或多個實施方案的一個媒質(zhì)服務(wù)器和具有存儲的數(shù)據(jù)庫備份文件的一個存儲裝置。圖5展示了將存儲的完全備份文件轉(zhuǎn)換為增量備份文件的一個實施方案。圖6展示了數(shù)據(jù)庫檔案系統(tǒng)的一個實施方案。圖7展示了由一個完全備份文件和一個增量備份文件重構(gòu)的一個卸載的數(shù)據(jù)庫文件的一個實施方案。圖8的廣義流程圖展示了增量備份操作的一個實施方案。圖9的廣義流程圖展示了在增量備份之后的恢復操作的一個實施方案。
具體實施例方式在以下描述中,給出了很多具體細節(jié)以透徹理解本文提出的方法和機制。然而,本領(lǐng)域普通技術(shù)人員應(yīng)當認識到?jīng)]有這些具體細節(jié)也可以實施各種實施方案。在一些實例中,并未詳細示出眾所周知的結(jié)構(gòu)、部件、信號、計算機程序指令以及技術(shù),以避免混淆本文所述的方法。應(yīng)當認識到為了進行簡單而清晰的解釋,圖中所示的元素不一定按照比例繪出。例如,可以相對于其他元素而放大一些元素的尺寸。參見圖1,示出了一個數(shù)據(jù)庫檔案系統(tǒng)的實施方案的廣義框圖。數(shù)據(jù)庫服務(wù)器110 和媒質(zhì)服務(wù)器130連接到網(wǎng)絡(luò)120上。在一個實施方案中,數(shù)據(jù)庫服務(wù)器110可以是微軟 SQL服務(wù)器。在一些實施方案中,數(shù)據(jù)庫服務(wù)器110還可以連接到一個應(yīng)用服務(wù)器(未示出)上,例如微軟 的SharePoint 服務(wù)器。網(wǎng)絡(luò)120可以包括各種網(wǎng)絡(luò)連接,這些網(wǎng)絡(luò)連接包括以下類型網(wǎng)絡(luò)的組合局域網(wǎng)(LAN)(如以太網(wǎng)和光纖通道(FC)網(wǎng))、基于電氣與電子工程協(xié)會的802. 11標準(Wi-Fi) 的無線局域網(wǎng)(WLAN)、廣域網(wǎng)(WAN)(如互聯(lián)網(wǎng)、蜂窩數(shù)據(jù)網(wǎng))以及其他數(shù)據(jù)通信網(wǎng)絡(luò),例如在公共網(wǎng)絡(luò)(例如互聯(lián)網(wǎng))上實現(xiàn)的虛擬專用網(wǎng)(VPN)。其他網(wǎng)絡(luò)連接和體系結(jié)構(gòu)是可能的并且可以設(shè)想的。媒質(zhì)服務(wù)器130可以管理備份存儲裝置140,并且媒質(zhì)服務(wù)器130可以在備份存儲裝置140中存儲備份數(shù)據(jù)以及從數(shù)據(jù)庫服務(wù)器110接收的元數(shù)據(jù)。媒質(zhì)服務(wù)器130可以托管軟件從而執(zhí)行與備份和恢復數(shù)據(jù)至數(shù)據(jù)庫服務(wù)器110相關(guān)聯(lián)的任務(wù)。媒質(zhì)服務(wù)器130代表連接到網(wǎng)絡(luò)120上的任意數(shù)量的媒質(zhì)服務(wù)器、主服務(wù)器或其他類型的服務(wù)器。在其他實施方案中,媒質(zhì)服務(wù)器130可以是主服務(wù)器、其他類型的服務(wù)器或數(shù)據(jù)庫檔案系統(tǒng)中一個或多個服務(wù)器的組合。媒質(zhì)服務(wù)器130可以直接連接至備份存儲裝置140上或者媒質(zhì)服務(wù)器130可以通過各種網(wǎng)絡(luò)中的任意一種連接至備份存儲裝置140上,例如LAN、存儲區(qū)域網(wǎng)絡(luò)(SAN)或者其他網(wǎng)絡(luò)。在一個實施方案中,備份存儲裝置140可以是直接附接到媒質(zhì)服務(wù)器130的總線上的適配器卡。媒質(zhì)服務(wù)器130可以使用內(nèi)部存儲器(例如隨機訪問存儲器(RAM))以便在從數(shù)據(jù)庫服務(wù)器110、備份存儲裝置140或其他裝置接收數(shù)據(jù)或向其發(fā)送數(shù)據(jù)時對數(shù)據(jù)進行緩存。備份存儲裝置140代表任意數(shù)量的備份存儲裝置,并且可以包括各種類型的存儲媒質(zhì)中的任意一種,如硬盤驅(qū)動器、磁盤卷、刀片服務(wù)器、閃存驅(qū)動器、光驅(qū)動器、磁帶驅(qū)動器、磁帶卷、自動磁帶庫或其他存儲媒質(zhì)。數(shù)據(jù)庫150可以代表本文實現(xiàn)的數(shù)據(jù)庫程序和/或一個或多個實際數(shù)據(jù)庫。數(shù)據(jù)庫程序是指用于操作數(shù)據(jù)庫的可執(zhí)行命令、用戶接口以及其他程序代碼。所包含的數(shù)據(jù)庫可以進一步包括各種表、索引、關(guān)系、查詢、存儲的程序、文件系統(tǒng)、安全層、網(wǎng)絡(luò)接口等,它們被配置為用于操作多條數(shù)據(jù)記錄。數(shù)據(jù)庫150中的記錄可以排列在表中(行和列排列方式)。本文所用術(shù)語“記錄” 應(yīng)當表示數(shù)據(jù)庫中的表項。可以將相關(guān)記錄的集合概括地描述為數(shù)據(jù)庫中的“表”。一條記錄可以包括一個或多個字段,這些字段可以用作其他表中的其他記錄的索引(或關(guān)鍵字)。 例如,在文檔管理數(shù)據(jù)庫中,文檔表中的每條記錄可以代表存儲在數(shù)據(jù)庫中的一個文檔。在一個實施方案中,文檔可以存儲在記錄本身的字段中。在一些實施方案中,可以通過對文檔的引用在記錄中表示該文檔,例如存儲單元。另外,數(shù)據(jù)庫可以創(chuàng)建并修改已裝載的數(shù)據(jù)庫文件以便存儲和訪問關(guān)系數(shù)據(jù)庫的任意給定實現(xiàn)形式。在一些實施方案中,數(shù)據(jù)庫150可以在專用計算系統(tǒng)上執(zhí)行,如數(shù)據(jù)庫服務(wù)器110,該計算系統(tǒng)被配置為用于通過網(wǎng)絡(luò)120由其他服務(wù)器以及客戶端計算機進行訪問。數(shù)據(jù)庫150可以包括與關(guān)系數(shù)據(jù)庫相關(guān)聯(lián)的各種功能,如相加和查詢過程。查詢功能可以從數(shù)據(jù)庫檢索信息,例如變化映射、分配映射、對象、表、記錄以及其他數(shù)據(jù)。相加功能可以在數(shù)據(jù)庫中存儲信息。數(shù)據(jù)庫150可以是微軟SQL服務(wù)器數(shù)據(jù)庫并且用于提供訪問數(shù)據(jù)庫150的接口可以使用SQL。可以對進行數(shù)據(jù)存儲并且可以在頁面級別上從數(shù)據(jù)庫 150對其進行檢索。每個頁面可以有8千字節(jié)(KB)的大小并且可以由頭部和數(shù)據(jù)組成。頁面頭部可以包含對象ID,頁面中數(shù)據(jù)屬于該對象ID。服務(wù)器輸入/輸出(I/O)操作可以在頁面級別上進行,這樣使得數(shù)據(jù)庫服務(wù)器110讀或?qū)懻麄€頁面。在完全備份處理(其中生成數(shù)據(jù)庫150的完全備份)之后,可以采用后續(xù)的增量備份處理來生成增量備份并且只獲取最近一次完全備份以來發(fā)生變化的盤區(qū)。增量備份的生成可以一直連續(xù)進行,其中可以執(zhí)行并創(chuàng)建多個連續(xù)的后續(xù)增量備份,其中每個增量備份包括最近一次執(zhí)行的增量備份之后發(fā)生變化的盤區(qū)。由多個增量備份操作導致的變化盤區(qū)可以存儲在備份存儲裝置140中。對于恢復操作,可以在寫數(shù)據(jù)庫文件的處理過程中將最近一次生成的完全備份存儲到一個存儲裝置中,例如備份存儲裝置140、數(shù)據(jù)庫服務(wù)器110的物理存儲器或其他存儲裝置。然后可以將存儲在第一增量備份文件中的變化盤區(qū)分配到數(shù)據(jù)庫文件內(nèi)部適當?shù)拇鎯卧校员銓⒃摂?shù)據(jù)庫文件重新實例化到數(shù)據(jù)庫150在啟動第一增量備份時的狀態(tài)。 接著,能夠以增量備份序列的生成順序?qū)@些增量備份中的每一個連續(xù)地重復這種處理。 在處理結(jié)束時,可以通知數(shù)據(jù)庫服務(wù)器110數(shù)據(jù)庫文件已經(jīng)重構(gòu)并且準備將其恢復為數(shù)據(jù)庫150的一個實時實例。用戶或管理員可能希望從備份的數(shù)據(jù)庫中恢復一個或多個數(shù)據(jù)項(例如,文件、 電子郵件、圖像),而不是檢索整個數(shù)據(jù)庫。數(shù)據(jù)庫服務(wù)器110可以從檢索的數(shù)據(jù)庫文件檢索所請求一個或多個數(shù)據(jù)項,并將這些項恢復到數(shù)據(jù)庫150中?;謴鸵粋€或多個數(shù)據(jù)項的處理可以稱為精細恢復處理。圖I的媒質(zhì)服務(wù)器130和數(shù)據(jù)庫服務(wù)器110可以是任何類型的計算裝置(例如, 服務(wù)器,桌面?zhèn)€人計算機(PC)、膝上計算機、智能電話)并且包括各種硬件和軟件部件。硬件部件可以包括通過總線體系結(jié)構(gòu)連接在一起的一個或多個處理器、存儲器裝置、以及輸入/輸出(I/o)裝置。軟件部件可以包括存儲在存儲器裝置上的操作系統(tǒng)。操作系統(tǒng)可以是各種類型操作系統(tǒng)中的任意一種,例如微軟Windows 、Linux 、Solaris 或其他操作系統(tǒng)。該操作系統(tǒng)是可操作的以便向用戶提供各種服務(wù)并且可以支持各種程序的執(zhí)行,例如備份應(yīng)用程序、服務(wù)器應(yīng)用程序、數(shù)據(jù)庫應(yīng)用程序、軟件代理或各種其他應(yīng)用程序的任意一種。在其他實施方案中,數(shù)據(jù)庫服務(wù)器、數(shù)據(jù)庫、媒質(zhì)服務(wù)器、網(wǎng)絡(luò)以及備份存儲裝置的數(shù)量和類型不限于圖I所示的那些。任意數(shù)量的媒質(zhì)服務(wù)器、數(shù)據(jù)庫服務(wù)器和數(shù)據(jù)庫以及它們的任意組合可以經(jīng)由調(diào)制解調(diào)器組、直接LAN連接、無線連接、WAN鏈接等的各種組合而在以網(wǎng)絡(luò)體系結(jié)構(gòu)中互相連接?,F(xiàn)在參見圖2,圖中展示了創(chuàng)建快照映像的數(shù)據(jù)庫服務(wù)器的圖例。數(shù)據(jù)庫服務(wù)器 210管理數(shù)據(jù)庫220,并且數(shù)據(jù)庫服務(wù)器210可以連接至存儲裝置230上。存儲裝置230代表任意數(shù)量的存儲裝置,并且存儲裝置230可以是先前描述的多種類型的存儲媒質(zhì)中的任意一種。可替代地,數(shù)據(jù)庫服務(wù)器210可以使用物理存儲器或其他本地存儲裝置來存儲快照240以及與數(shù)據(jù)庫220相關(guān)的其他數(shù)據(jù)。如圖2所示,快照240存儲在存儲裝置230中??煺?40可以由數(shù)據(jù)庫服務(wù)器210 創(chuàng)建,并且快照240可以代表數(shù)據(jù)庫220的備份映像??煺?40可以是數(shù)據(jù)庫220的一種靜態(tài)的、時間點的表示形式??煺?40可以是整個數(shù)據(jù)庫的完全映像的副本,并且數(shù)據(jù)庫服務(wù)器210可以在執(zhí)行快照備份之后在存儲裝置230中存儲快照240。媒質(zhì)服務(wù)器(未示出) 可以訪問快照240以執(zhí)行增量備份??商娲?,媒質(zhì)服務(wù)器可以訪問快照240以執(zhí)行完全備份。數(shù)據(jù)庫服務(wù)器210可以認為快照備份是完全備份,并且數(shù)據(jù)庫服務(wù)器210可以重新設(shè)置映射和其他元數(shù)據(jù)以表明快照備份是完全備份的等同體?,F(xiàn)在參見圖3,圖中展示了快照映像的一個實施方案。快照310代表在SQL服務(wù)器進行的快照備份過程中從SQL數(shù)據(jù)庫獲取的映像。快照310可以包含數(shù)據(jù)庫的所有數(shù)據(jù), 包括元數(shù)據(jù)以及一個或多個映射。這些映射可以包括差異變化映射(DCM) 320、全局分配映射(GAM) 330、共享的全局分配映射(SGAM) 340、索引分配映射(IAM) 350以及對象360。對象360代表可以在底層SQL數(shù)據(jù)庫中存在的任意數(shù)量的對象,快照310從該底層SQL數(shù)據(jù)庫中創(chuàng)建。對象360可以組織成為盤區(qū),并且對象360可以代表存儲在數(shù)據(jù)庫中的任意類型的數(shù)據(jù),包括表、記錄、文檔、項、列表以及其他數(shù)據(jù)。在一些實施方案中,SQL數(shù)據(jù)庫可以由一個或多個文件構(gòu)成,每個文件具有它自己的一組映射。在這些實施方案中,快照310可以包含多個DCM、GAM、SGAM、LAM等。媒質(zhì)服務(wù)器可以從快照310中檢索DCM 320。然后,媒質(zhì)服務(wù)器可以讀取DCM 320 的頁面以確定自從前一個完全或增量備份以來修改了哪些盤區(qū)。媒質(zhì)服務(wù)器可以執(zhí)行查詢以便從快照310檢索構(gòu)成DCM的頁面第一 DCM頁面可以位于快照310的第七頁面。第二 DCM頁面可以偏離第一 DCM頁面512232頁而位于第512239頁面。第三頁的DCM頁面可以偏離第一 DCM頁面1024464頁而位于第1022471頁面上,以此類推。媒質(zhì)服務(wù)器還可以執(zhí)行查詢以便從快照310檢索一個或多個分配映射。分配映射可以包含關(guān)于一個對象或索引所使用的盤區(qū)的信息。例如,分配映射可以包含盤區(qū)的位屏蔽,這些位屏蔽表示該對象使用了哪些盤區(qū)。該一個或多個分配映射可以包括GAM 330、 SGAM 340以及IAM 350。這些分配映射可以允許媒質(zhì)服務(wù)器確定是否已經(jīng)分配了發(fā)生變化的盤區(qū)。例如,因為對應(yīng)于一個盤區(qū)的對象被刪除,該盤區(qū)就可能發(fā)生變化。因此,該盤區(qū)實際上可以不包含任何需要備份的數(shù)據(jù),即使DCM 320可以表示該盤區(qū)已經(jīng)變化。通過檢查這些分配映射,媒質(zhì)服務(wù)器可以減少需要存儲為增量備份的一部分的盤區(qū)的數(shù)量。媒質(zhì)服務(wù)器可以從快照310中僅檢索已分配給一個對象的變化盤區(qū)。然后,媒質(zhì)服務(wù)器可以在存儲裝置中存儲所檢索的盤區(qū)。媒質(zhì)服務(wù)器還可以存儲元數(shù)據(jù),該元數(shù)據(jù)包括作為增量備份的一部分的一個或多個映射??商娲兀劫|(zhì)服務(wù)器可以完整地將快照310 備份為完全備份的一部分。然而,執(zhí)行快照310的完全備份可能比執(zhí)行增量備份占用更多的存儲空間量。在變化的盤區(qū)以及一個或多個映射從快照310檢索并且存儲在備份存儲裝置中后,可以舍棄快照310。上述與快照310相關(guān)的由媒質(zhì)服務(wù)器執(zhí)行的步驟還可以由數(shù)據(jù)庫服務(wù)器、其他服務(wù)器或其他類型的計算裝置來執(zhí)行。現(xiàn)在參見圖4,圖中展示了媒質(zhì)服務(wù)器和具有存儲的數(shù)據(jù)庫備份文件的一個實施方案。媒質(zhì)服務(wù)器410可以在備份存儲裝置420中存儲與數(shù)據(jù)庫的備份相關(guān)聯(lián)的文件。完CN 102591982 A
全備份文件425存儲在備份存儲裝置420中,并且完全備份文件425可以包含一個先前完全數(shù)據(jù)庫備份操作產(chǎn)生的數(shù)據(jù)。在一個實施方案中,完全備份文件425可以是一個主數(shù)據(jù)文件(MDF)。媒質(zhì)服務(wù)器410還可以被配置為用于生成表和索引信息的略圖并與完全備份文件425中的備份內(nèi)容一起存儲。略圖可以指出數(shù)據(jù)庫文件的數(shù)據(jù)結(jié)構(gòu),并且略圖可以包括多個存儲單元,這些存儲單元定義了數(shù)據(jù)庫文件內(nèi)部的某些數(shù)據(jù)結(jié)構(gòu)。略圖可以用于快速并有效地對完全備份文件425中的對象進行定位,而無需執(zhí)行大量的查找操作。當正在創(chuàng)建數(shù)據(jù)庫的一個完全備份時,可以通過查詢該數(shù)據(jù)庫來生成略圖。略圖可以用于訪問或恢復完全備份文件425的內(nèi)容,而無需使用實時數(shù)據(jù)庫或數(shù)據(jù)庫服務(wù)器。增量備份文件430和440還存儲在備份存儲裝置420中。增量備份文件430和 440還可以稱為塊級增量文件。增量備份文件430和440包含一些發(fā)生變化的盤區(qū),這些盤區(qū)是作為數(shù)據(jù)庫的增量備份操作的一部分而進行備份的。增量備份文件430和440代表任意數(shù)量的文件,這些文件與可執(zhí)行的任意數(shù)量的增量備份操作相關(guān)聯(lián)。例如,如果在連接至媒質(zhì)服務(wù)器410的數(shù)據(jù)庫上執(zhí)行十次增量備份,那么就會有十個增量備份文件存儲在備份存儲裝置420中。在一個實施方案中,完全備份文件425和/或增量備份文件430和440可以是二進制文件,利用調(diào)用備份存儲裝置420的文件系統(tǒng)的標準文件I/O可以順序地訪問該二進制文件。該文件系統(tǒng)可以是在備份存儲裝置420上創(chuàng)建的卷中參引并且存儲數(shù)據(jù)的一種信息系統(tǒng),該數(shù)據(jù)以文件和目錄形式按層級進行組織。在一些實施方案中,完全備份文件425 和/或增量備份文件430和440可以采用存儲器的塊單元(也稱為頁面或分配單元)的形式進行構(gòu)建。元數(shù)據(jù)435和445還可以存儲在備份存儲裝置420中,并且元數(shù)據(jù)435對應(yīng)于增量備份文件430,而元數(shù)據(jù)445對應(yīng)于增量備份文件440。元數(shù)據(jù)435包括附加數(shù)據(jù),例如一個或多個映射,這些附加數(shù)據(jù)可以作為與增量備份文件430相關(guān)聯(lián)的增量備份操作的一部分而存儲在備份存儲裝置420中。一個或多個映射可以包括DCM、GAM、SGAM、IAM以及其他映射。附加信息還可以存儲在與增量備份文件430相關(guān)的元數(shù)據(jù)435中。元數(shù)據(jù)435可以用于幫助從增量備份文件430恢復一個或多個數(shù)據(jù)項的操作。在另一個實施方案中,備份存儲裝置420中可以有一個元數(shù)據(jù)存儲單元,該元數(shù)據(jù)存儲單元包含與多個增量備份操作相關(guān)聯(lián)的元數(shù)據(jù)。在又一個實施方案中,元數(shù)據(jù)435可以存儲在增量備份文件430內(nèi)部。 元數(shù)據(jù)435的上述特征還可以適用于元數(shù)據(jù)445。在一個實施方案中,當執(zhí)行一次新的完全數(shù)據(jù)庫備份操作時,媒質(zhì)服務(wù)器410可以從備份存儲裝置420中刪除舊的完全數(shù)據(jù)庫備份文件。媒質(zhì)服務(wù)器410此時還可以刪除舊的元數(shù)據(jù)以及增量備份文件。在另一個實施方案中,當執(zhí)行一次新的完全數(shù)據(jù)庫備份操作時,媒質(zhì)服務(wù)器410可以保留一個或多個先前的完全數(shù)據(jù)庫備份文件、增量備份文件和/ 或元數(shù)據(jù)文件。媒質(zhì)服務(wù)器410可以具有與元數(shù)據(jù)文件、增量備份文件以及完全數(shù)據(jù)庫備份文件相關(guān)的保留策略,該保留策略涉及刪除更舊的文件以便釋放備份存儲裝置420中的存儲空間。在另一個實施方案中,完全備份文件425可以被轉(zhuǎn)換為一個增量備份文件(或差異備份文件)以降低與完全備份文件425相關(guān)的存儲利用率。如果完全備份文件425對應(yīng)于一個快照備份,那么可以從完全備份文件425檢索一個或多個的映射,這個或這些映射
11標識與更早的備份相比已經(jīng)變化的數(shù)據(jù)??商娲兀@些標識變化數(shù)據(jù)(可以將它們標識為盤區(qū))的映射可以與完全備份文件425分開存儲,并且可以從這種分離的文件或位置上檢索這些映射。在已經(jīng)檢索了這些映射并且已經(jīng)標識了變化的數(shù)據(jù)后,變化的數(shù)據(jù)可以從完全備份文件425得到檢索并且作為增量備份文件存儲在備份存儲裝置420中??商娲?, 可以使用一種不同的算法將完全備份文件425轉(zhuǎn)換為增量備份文件。在完全備份文件425 已經(jīng)轉(zhuǎn)換為增量備份文件后,完全備份文件425可以從備份存儲裝置420中舍棄。還可以存儲最新創(chuàng)建的增量備份所對應(yīng)的較早備份的標識。為了將完全備份文件425壓縮成一個轉(zhuǎn)換的增量備份文件,在完全備份文件425 之前創(chuàng)建的前一個完全備份文件可能需要存儲在備份存儲裝置420中。該前一個完全備份文件由所轉(zhuǎn)換的增量備份文件參引(或者以其他方式與其相關(guān)聯(lián))以幫助任何可能的恢復操作。以后的恢復操作就可以同時利用前一個完全備份文件和所轉(zhuǎn)換的增量文件?,F(xiàn)在參見圖5,圖中展示了用于壓縮先前存儲的完全備份文件的系統(tǒng)和方法的示例。在該實例中,所存儲的完全備份文件被轉(zhuǎn)換為部分(例如,增量的)備份文件。媒質(zhì)服務(wù)器510連接至備份存儲裝置520上,并且備份存儲裝置520存儲完全備份文件530、540、 550以及560。完全備份文件530至560表示可以在備份存儲裝置520中存儲的任意數(shù)量的完全備份文件。完全備份文件530至560可以對應(yīng)于較早(例如,連續(xù)地)執(zhí)行的完全備份操作, 而無需在這些完全備份操作之間執(zhí)行任何增量或差異備份操作??梢酝ㄟ^將完全備份文件 530至560中的一個或多個壓縮成所轉(zhuǎn)換的增量備份文件而減少存儲完全備份文件530至 560所使用的存儲空間。當將先前創(chuàng)建的完全備份文件轉(zhuǎn)換為部分備份文件時,較早存儲的完全備份文件可以用作錨點、或起始點/參考,以用于有待轉(zhuǎn)換的后續(xù)完全備份文件。在圖5所示的實例中,完全備份文件530可以用作錨完全備份文件。通過讀取一個或多個用于標識變化數(shù)據(jù)的映射、從完全備份文件540檢索變化的數(shù)據(jù)、并且將變化的數(shù)據(jù)存儲為增量備份文件(即所轉(zhuǎn)化的增量備份文件545),可以將在該錨文件(即完全備份文件540)之后的所存儲的下一個完全備份文件壓縮成一個轉(zhuǎn)換的增量備份文件。在已經(jīng)創(chuàng)建了轉(zhuǎn)換的增量備份文件 545之后,可以舍棄完全備份文件540。在其他實施方案中,可以使用不同的方法將完全備份文件轉(zhuǎn)換成增量備份文件。通過將完全備份文件550和560對應(yīng)地壓縮成轉(zhuǎn)換的增量備份文件555和565,這種處理可以持續(xù)進行。然后,可以舍棄完全備份文件550和560。對于所存儲的備份文件,這種處理可以大大降低存儲利用率??梢詫㈠^完全備份文件(即完全備份文件530)和轉(zhuǎn)換的增量備份文件545至565移動到基于云的存儲單元、磁帶裝置上, 或者可以保留在備份存儲裝置520上??梢岳猛耆珎浞菸募?30以及一個或多個轉(zhuǎn)換的增量備份文件545至565進行完全的或精細的恢復?,F(xiàn)在轉(zhuǎn)到圖6,圖中展示了數(shù)據(jù)庫檔案系統(tǒng)的一個實施方案。數(shù)據(jù)庫服務(wù)器610連接至網(wǎng)絡(luò)680以及數(shù)據(jù)庫630上。媒質(zhì)服務(wù)器670連接至網(wǎng)絡(luò)680以及存儲裝置620上。 在其他實施方案中,存儲裝置620可以直接連接至數(shù)據(jù)庫服務(wù)器610上,并且媒質(zhì)服務(wù)器 670可以通過網(wǎng)絡(luò)680訪問存儲裝置620。用戶或管理員可以請求將數(shù)據(jù)庫恢復到與一個特定的增量備份相關(guān)聯(lián)的一個特定時間點上。可替代地,用戶或管理員可以請求從一個特定時間點恢復一個或多個數(shù)據(jù)項。媒質(zhì)服務(wù)器670可以存儲數(shù)據(jù)庫630的備份,并且媒質(zhì)服務(wù)器670可以將一個完全備份文件與一個或多個增量備份文件進行合并,以作為一個或多個數(shù)據(jù)項的恢復操作的一部分。卸載的數(shù)據(jù)庫文件660包含完全備份文件640以及增量備份文件650。本文所用的術(shù)語“卸載的數(shù)據(jù)庫文件”旨在包括一個含有內(nèi)容管理應(yīng)用程序的數(shù)據(jù)的數(shù)據(jù)庫,該內(nèi)容管理應(yīng)用程序在內(nèi)容管理應(yīng)用程序的實時實例上當前并未激活。完全備份文件640可以對應(yīng)于用戶選擇的時間點之前執(zhí)行的數(shù)據(jù)庫630的最近完全備份。在執(zhí)行完全備份操作時, 完全備份文件640可以包含數(shù)據(jù)庫630的所有數(shù)據(jù)。增量備份文件650可以對應(yīng)于在所選時間點上發(fā)生的一個增量備份。增量備份文件650代表可在完全備份操作(對應(yīng)于完全備份文件640)之后和所選時間點之前執(zhí)行的任意數(shù)量的增量備份。數(shù)據(jù)庫服務(wù)器610可以包括精細恢復功能以便將特定對象或記錄從卸載的數(shù)據(jù)庫文件660添加到數(shù)據(jù)庫630上。精細恢復功能還可以包括選擇一條或多條記錄或?qū)ο蟮难b置以進行恢復。在一個實施方案中,可以將選擇并恢復記錄或?qū)ο蟮挠脩艚涌谂渲脼榫毣謴筒僮鞯囊徊糠?。精細檢索可以使管理員或用戶能夠從卸載的數(shù)據(jù)庫文件660中只選擇所需要的記錄或?qū)ο?,而無需恢復整個文件。在一些實施方案中,對象可以是文檔,例如微軟Word 、Excel ,PowerPoint 、便攜式文檔格式(HF)、視頻、音頻文件以及其他文檔。在其他實施方案中,對象可以包括網(wǎng)站、子網(wǎng)站、列表以及列表項。在一個實施方案中,對象可以從卸載的數(shù)據(jù)庫文件660恢復到數(shù)據(jù)庫630的工作副本中,或者恢復到數(shù)據(jù)庫630的另一個副本中。在其他實施方案中,在恢復到數(shù)據(jù)庫630 的工作副本之前,可以將對象緩存在數(shù)據(jù)庫服務(wù)器610的存儲器中。在又一個實施方案中, 對象可以從卸載的數(shù)據(jù)庫文件660恢復到存儲器媒質(zhì)、數(shù)據(jù)庫服務(wù)器610、媒質(zhì)服務(wù)器670、 其他服務(wù)器、客戶端或其他計算裝置上的文件系統(tǒng)中。在仍又一個實施方案中,對象可以恢復到內(nèi)部門戶應(yīng)用程序或其他軟件應(yīng)用程序。用戶可以執(zhí)行差異和日志備份以及完全或增量備份。差異或日志備份可以與完全和增量備份相混合。本文描述的方法和機制還可以用于執(zhí)行增量備份并且將數(shù)據(jù)庫恢復到增量備份,同時也執(zhí)行差異和日志備份并且從差異和日志備份進行恢復。例如,用戶可以執(zhí)行一次完全備份、一次增量備份、兩次差異備份,然后再執(zhí)行一次日志備份。那么用戶可能希望將數(shù)據(jù)庫恢復到它在日志備份后所處的狀態(tài)??梢詫⑼耆珎浞菸募懙揭粋€存儲裝置中,然后可以將增量備份文件疊加(即邏輯上合并)在完全備份文件上。接著第二差異備份文件可以在完全加增量文件的頂部進行恢復。最終,在所檢索的數(shù)據(jù)庫文件上對日志備份進行回放。根據(jù)本文描述的方法和機制,可以執(zhí)行完全、增量、差異以及日志備份的其他順序。現(xiàn)在參見圖7,圖中展示了從完全備份文件和增量備份文件重構(gòu)的卸載數(shù)據(jù)庫文件的實施方案的框圖。卸載數(shù)據(jù)庫文件660、完全備份文件640以及增量備份文件650對應(yīng)于圖6的相同文件。完全備份文件640包括對象711至719,這些對象代表任意數(shù)量的存儲數(shù)據(jù)庫對象。對象711至719可以代表存儲在數(shù)據(jù)庫中的任意類型的數(shù)據(jù),包括表、記錄、文檔、項、列表以及其他數(shù)據(jù)。增量備份文件650包括對象722和729,這些對象可以代表在創(chuàng)建完全備份文件640和創(chuàng)建增量備份文件650兩個時刻之間已經(jīng)變化的任意數(shù)量的對象。對象722和729對應(yīng)于在創(chuàng)建增量備份文件650的增量備份操作過程中收集的變化的盤區(qū)。另外,在完全備份文件640以及增量備份文件650中所呈現(xiàn)的對象可以包括描述對象的元數(shù)據(jù)。圖7描繪了恢復操作的一個實施方案。恢復應(yīng)用程序可以將對象711至719從完全備份文件640寫到卸載的數(shù)據(jù)庫文件660中。然后,恢復應(yīng)用程序可以將對象722以及 729從增量備份文件650寫到卸載的數(shù)據(jù)庫文件660中?;謴蛻?yīng)用程序可以使用一個或多個分配映射和/或與增量備份文件650 —起存儲的其他元數(shù)據(jù)以確定將對象722和729寫到卸載的數(shù)據(jù)庫文件660中的合適位置。對象712和719可以分別由對象722和729覆蓋。 在將對象722和729從增量備份文件650寫到卸載數(shù)據(jù)庫文件660中之后,恢復應(yīng)用程序可以告知SQL服務(wù)器卸載的數(shù)據(jù)庫文件660已經(jīng)進行了重構(gòu)并且已準備好恢復到數(shù)據(jù)庫的實時副本中?;謴蛻?yīng)用程序可以在數(shù)據(jù)庫服務(wù)器、媒質(zhì)服務(wù)器或其他計算裝置上運行。在另一個實施方案中,恢復應(yīng)用程序可以使用完全備份文件640作為恢復應(yīng)用程序的起始點?;謴蛻?yīng)用程序可以將對象從增量備份文件650 (以及與所執(zhí)行的進一步的增量備份操作相對應(yīng)的任意附加的增量操作文件)寫到完全備份文件640中,其中變化的對象覆蓋原始對象。在又一個實施方案中,恢復應(yīng)用程序可以將完全備份文件640和增量備份文件650寫回到數(shù)據(jù)庫的工作備份的頂部或?qū)懙綌?shù)據(jù)庫的另一份副本中。在又一個實施方案中,可以在對象在恢復到數(shù)據(jù)庫的工作副本中之前將其緩存在存儲器中。在又一個實施方案中,對象可以從完全備份文件640和差異備份文件650恢復到存儲媒質(zhì)、SQL服務(wù)器、 媒質(zhì)服務(wù)器、其他服務(wù)器或其他計算裝置上的一個文件系統(tǒng)中。在仍又一個實施方案中,對象可以恢復到一個內(nèi)部門戶應(yīng)用程序或其他軟件應(yīng)用程序中。圖7中的卸載數(shù)據(jù)庫文件660、完全備份文件640以及增量備份文件650的圖例是這些文件的邏輯表示。這些文件的實際結(jié)構(gòu)和組織與它們在圖7中呈現(xiàn)的形式有所不同。例如,額外的數(shù)據(jù)可以附加到增量備份文件650中。如果在創(chuàng)建了完全備份文件640 之后新的對象被添加到數(shù)據(jù)庫中,可以將描述新對象的元數(shù)據(jù)添加到增量備份文件650的末端。另外,如果在創(chuàng)建了完全備份文件640之后從數(shù)據(jù)庫中刪除了多個對象,可以描述這些所刪除的對象的元數(shù)據(jù)附加到增量備份文件650?;謴蛻?yīng)用程序可以使用元數(shù)據(jù)來確定添加哪些對象以及從卸載的數(shù)據(jù)庫文件660中刪除哪些對象?;謴蛻?yīng)用程序可以生成與數(shù)據(jù)庫的不同時間點實例相對應(yīng)的多個卸載數(shù)據(jù)庫文件?;謴蛻?yīng)用程序可以為用戶生成一個用戶接口以便訪問多個時間點的數(shù)據(jù)庫實例并從它們中進行選擇。用戶可能希望從特定時間點的數(shù)據(jù)庫備份副本上恢復一個或多個對象。可替代地,用戶可能希望從特定時間點來檢索整個數(shù)據(jù)庫?;謴蛻?yīng)用程序提供的用戶接口可以為用戶呈現(xiàn)多個備份以便從考慮進行恢復操作的時刻中進行選擇??梢愿鶕?jù)執(zhí)行備份的日期和時間列出多個時間點備份。列出并組織時間點備份的其他方法是可能的并且是可設(shè)
相的
心、U J O現(xiàn)在參見圖8,圖中展示了一種用于執(zhí)行數(shù)據(jù)庫的增量備份的方法的實施方案。為了進行討論,順序地示出了本實施方案中的步驟。應(yīng)當注意的是,在以下描述的方法的不同實施方案中,可以按照不同于所示次序的次序同時執(zhí)行所描述的一個或多個要素,或者可以完全忽略。還可以按照所期望的方式執(zhí)行其他附加要素。在方框810,方法800開始,并且然后在方框820,傳送一條執(zhí)行數(shù)據(jù)庫完全備份的請求。該請求可以由用戶或管理員發(fā)出并傳送到數(shù)據(jù)庫服務(wù)器??商娲?,該請求可以根據(jù)預先安排的備份時間表由數(shù)據(jù)庫服務(wù)器、媒質(zhì)服務(wù)器或其他計算裝置自動地產(chǎn)生。數(shù)據(jù)庫服務(wù)器可以表現(xiàn)得如同正在執(zhí)行一次完全數(shù)據(jù)庫備份一樣,即使實際上可能僅在執(zhí)行增量備份。接下來,在方框830,可以獲取數(shù)據(jù)庫的一個快照。該快照可以由數(shù)據(jù)庫服務(wù)器執(zhí)行。在獲取數(shù)據(jù)庫快照之后的某個點上,數(shù)據(jù)庫服務(wù)器可以重新設(shè)置DCM位圖的實時副本, 就好像執(zhí)行一次完全備份操作一樣。重新設(shè)置DCM位圖的實時副本將清空位圖中所有的變化數(shù)據(jù)/盤區(qū)指示器,并允許數(shù)據(jù)庫服務(wù)器只跟蹤獲取快照后發(fā)生的變化。在方框830后,可以從快照檢索一個或多個映射(方框840)。這些映射可以包括 DCM、GAM、SGAM、IAM和/或其他映射??梢宰x入映射以確定在前一個備份之后哪些盤區(qū)發(fā)生了變化(方框850)。還可以使用映射來確定是否分配了變化的盤區(qū)。前一個備份可以是完全備份、快照備份或增量備份。在方框850之后,從快照中檢索變化的盤區(qū)(方框860)。可以使用一個或多個映射來定位快照內(nèi)部變化的盤區(qū)。在一個實施方案中,只檢索已分配給對象的變化盤區(qū)。接著,可以將變化的盤區(qū)在存儲裝置中存儲為增量備份文件(方框870)。另外,還可以將該一個或多個映射以及任何附加元數(shù)據(jù)存儲在存儲裝置中。然后,在方框880中,舍棄快照。在方框880之后,方法在方框890結(jié)束?,F(xiàn)在轉(zhuǎn)到圖9,圖中展示了從增量備份執(zhí)行恢復操作的方法的一個實施方案。為了進行討論,順序地示出了本實施方案中的步驟。應(yīng)當注意的是,在以下描述的方法的各種實施方案中,可以按照不同于所示次序的次序同時執(zhí)行所描述的一個或多個要素,或者可以完全忽略。也可以按照所期望的那樣執(zhí)行其他附加要素。在方框910中,方法900開始,接著在方框920中,檢測從數(shù)據(jù)庫的備份版本中執(zhí)行恢復操作的請求?;謴筒僮骺梢杂捎脩艋蚬芾韱T進行請求,并且恢復操作可以根據(jù)對應(yīng)于前一次備份操作的數(shù)據(jù)庫的特定時間點來請求。前一次備份操作可以是數(shù)據(jù)庫的完全、 增量、差異或日志備份。接著,在方框930,可以檢索前一次完全數(shù)據(jù)庫備份文件。前一次完全數(shù)據(jù)庫備份文件可以對應(yīng)于用戶所請求的特定時間點上或該時間點以前的最近一次數(shù)據(jù)庫完全備份操作。然后,前一次完全數(shù)據(jù)庫備份文件可以存儲在存儲裝置中(方框940)。 在一個實施方案中,存儲裝置可以是與包含完全數(shù)據(jù)庫備份文件的備份存儲裝置相分離的一個存儲裝置。在其他實施方案中,存儲裝置可以與包含完全數(shù)據(jù)庫備份文件的備份存儲裝置相同。在又一個實施方案中,存儲裝置可以是附接到數(shù)據(jù)庫服務(wù)器上的一個或多個存儲裝置,該數(shù)據(jù)庫服務(wù)器與數(shù)據(jù)庫的實時實例相關(guān)聯(lián)。在方框940之后,對應(yīng)于增量備份操作的變化盤區(qū)可以從備份存儲裝置中檢索 (方框950)。另外,與增量備份操作相關(guān)聯(lián)的一個或多個存儲的映射還可以從備份存儲裝置中檢索。該一個或多個存儲的映射可以包括DCM、GAM、SGAM、IAM和/或其他映射。與變化的盤區(qū)相關(guān)聯(lián)的附加元數(shù)據(jù)還可以從備份存儲裝置中檢索。接著,可以將變化的盤區(qū)寫入前一次完全數(shù)據(jù)庫備份文件內(nèi)部的適合位置上(方框960)??梢允褂靡粋€或多個映射來確定前一次完全數(shù)據(jù)庫備份文件內(nèi)部的適合位置。然后,將該重構(gòu)的數(shù)據(jù)庫備份文件告知數(shù)據(jù)庫服務(wù)器(方框970)??梢愿嬷獢?shù)據(jù)庫服務(wù)器該重構(gòu)的文件已等待恢復。數(shù)據(jù)庫服務(wù)器可以恢復整個重構(gòu)文件,或者數(shù)據(jù)庫服務(wù)器可以從重構(gòu)文件中恢復一個或多個對象。在方框970之后,方法900可以在方框980結(jié)束。應(yīng)當注意,上述實施方案可以包括軟件。在這樣的實施方案中,代表所述系統(tǒng)和/ 或方法的程序指令和/或數(shù)據(jù)庫(這兩者都可以稱為“指令”)可以存儲在一種計算機可讀媒質(zhì)上。通常來講,計算機可讀存儲媒質(zhì)可以包括可由計算機在使用過程中訪問的任何存儲媒質(zhì)以便向計算機提供指令和/或數(shù)據(jù)。例如,計算機可讀存儲媒質(zhì)可以包括的存儲媒質(zhì)有磁或光媒質(zhì),例如磁盤(固定的或可移動的)、磁帶、CD-ROM、DVD-ROM、CD-R、CD-RW、 DVD-R、DVD-RW或藍光(Blu-Ray)。存儲媒質(zhì)可以進一步包括易失性或非易性失存儲媒質(zhì), 例如RAM(例如同步動態(tài)RAM(SDRAM)、雙倍數(shù)據(jù)速率(DDR、DDR2、DDR3等)SDRAM、低功率 DDR(LPDDR2 等)SDRAM、Rambus DRAM (RDRAM)、靜態(tài) RAM(SRAM))、ROM、非易失性存儲器(例如閃存),可通過如USB接口等這樣的外圍接口訪問這些存儲媒質(zhì)。存儲媒質(zhì)可以包括微電子機械系統(tǒng)(MEMS)以及可通過如網(wǎng)絡(luò)和/或無線鏈接這樣的通信媒質(zhì)訪問的存儲媒質(zhì)。在不同的實施方案中,本文所述方法和機制的一個或多個部分可以構(gòu)成云計算環(huán)境的一部分。在這樣的實施方案中,根據(jù)一個或多個不同模型,可以通過互聯(lián)網(wǎng)將資源作為服務(wù)來提供。這類模型可以包括基礎(chǔ)設(shè)施即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)、軟件即服務(wù) (SaaS)。在IaaS中,計算機基礎(chǔ)設(shè)施作為服務(wù)進行傳送。在這種情況中,計算設(shè)備通常由服務(wù)提供商擁有并操作。在PaaS模式中,用于開發(fā)軟件解決方案的開發(fā)者所用的軟件工具和底層設(shè)備可以由服務(wù)提供者作為服務(wù)來提供并托管。SaaS典型地包括按需作為服務(wù)的服務(wù)提供商許可軟件。服務(wù)提供商可以托管軟件,或者可以將軟件調(diào)配給客戶一段給定的時間。以上模式的很多組合是可能的并且是可以設(shè)想的。盡管展示并描述了多個方法的若干實施方案,但對本領(lǐng)域普通技術(shù)人員而言顯而易見的是可以對所述方法做出很多改變、修改和變更。因此,改變、修改和變更應(yīng)當視為在本文描述的方法和機制的范圍內(nèi)。還應(yīng)當強調(diào)的是,上述實施方案只是實施方式的非限定性實例。
權(quán)利要求
1.一種用于執(zhí)行數(shù)據(jù)庫增量備份的方法,該方法包括傳送一個請求以執(zhí)行該數(shù)據(jù)庫的一個完全備份;檢索與該完全備份相關(guān)聯(lián)的一個或多個映射,所述一個或多個映射包括自從一個前一次備份以來已經(jīng)變化的數(shù)據(jù)的一個標識;檢索所變化的數(shù)據(jù);將所變化的數(shù)據(jù)作為一個增量備份文件存儲在一個存儲裝置中;并且舍棄自從該前一次備份以來未發(fā)生變化的該完全備份的完全備份數(shù)據(jù)。
2.如權(quán)利要求I所述的方法,進一步包括存儲與該增量備份文件相關(guān)聯(lián)的所述一個或多個映射。
3.如權(quán)利要求2所述的方法,其中該一個或多個映射包括一個差異變化映射(DCM),該差異變化映射包括表明自從該前一次備份以來已經(jīng)變化的數(shù)據(jù)的一個位圖,并且其中該方法包括重新設(shè)置與該數(shù)據(jù)庫相關(guān)聯(lián)的一個DCM位圖的實時副本,就如同響應(yīng)于所述請求執(zhí)行了一次完全備份。
4.如權(quán)利要求I所述的方法,該方法包括響應(yīng)于執(zhí)行該完全備份的這個請求而獲取該數(shù)據(jù)庫的一個快照。
5.如權(quán)利要求2所述的方法,其中該一個或多個映射包括一個全局分配映射(GAM), 該全局分配映射包括關(guān)于已經(jīng)被分配的多個數(shù)據(jù)盤區(qū)的信息;一個共享的全局分配映射 (SGAM),該共享的全局分配映射包括與具有至少一個未用頁面的多個混合盤區(qū)相關(guān)的信息;和/或一個索引分配映射(IAM),該索引分配映射包括關(guān)于一個表或索引所使用的多個盤區(qū)的信息;并且其中在檢索所變化的數(shù)據(jù)之前,該方法包括讀取該一個或多個映射以確定是否分配了這些變化的盤區(qū);并且只有分配了這些變化的盤區(qū)時才對它們進行檢索。
6.如權(quán)利要求2所述的方法,進一步包括檢測與所述增量備份文件相對應(yīng)的一個請求以執(zhí)行一個恢復操作;標識與該增量備份文件相關(guān)聯(lián)的一個完全數(shù)據(jù)庫備份文件;通過利用該增量備份文件以及與該增量備份文件相關(guān)聯(lián)的完全數(shù)據(jù)庫備份文件來執(zhí)行一個恢復操作而創(chuàng)建一個恢復的數(shù)據(jù)庫;將該恢復的數(shù)據(jù)庫告知一個數(shù)據(jù)庫服務(wù)器。
7.如權(quán)利要求I所述的方法,進一步包括標識一個先前存儲的完全備份;檢索與該完全備份相關(guān)聯(lián)的一個映射;利用所述映射來標識自從一個前一次備份以來已經(jīng)變化的具體數(shù)據(jù);將該具體數(shù)據(jù)作為該先前存儲的完全備份的一個壓縮版本的一部分進行存儲;并且舍棄自從該前一次備份以來未發(fā)生變化的完全備份的完全備份數(shù)據(jù)。
8.一種計算機可讀存儲媒質(zhì),該計算機可讀媒質(zhì)包括多條程序指令以執(zhí)行一個數(shù)據(jù)庫的增量備份,其中當執(zhí)行時,這些程序指令是可操作的而用于傳送一條請求以執(zhí)行該數(shù)據(jù)庫的一個完全備份;檢索與該完全備份相關(guān)聯(lián)的一個或多個映射,所述一個或多個映射包括自從一個前一次備份以來已經(jīng)變化的數(shù)據(jù)的一個標識;檢索所變化的數(shù)據(jù);將所變化的數(shù)據(jù)作為一個增量備份文件存儲在一個存儲裝置中;并且舍棄自從該前一次備份以來未發(fā)生變化的該完全備份的完全備份數(shù)據(jù)。
9.如權(quán)利要求8所述的計算機可讀存儲媒質(zhì),其中所述指令是進一步可操作的以便存儲與該增量備份文件相關(guān)聯(lián)的所述一個或多個映射。
10.如權(quán)利要求9所述的計算機可讀存儲媒質(zhì),其中該一個或多個映射包括一個差異變化映射(DCM),該差異變化映射包括表明自該從前一次備份以來已經(jīng)變化的數(shù)據(jù)的一個位圖,并且其中這些指令是進一步可操作的以便重新設(shè)置與該數(shù)據(jù)庫相關(guān)聯(lián)的一個DCM位圖的實時副本,就如同響應(yīng)于所述請求執(zhí)行了一次完全備份。
11.如權(quán)利要求8所述的計算機可讀存儲媒質(zhì),其中這些程序指令是進一步可操作的以便響應(yīng)于執(zhí)行該完全備份的請求而獲取該數(shù)據(jù)庫的一個快照。
12.如權(quán)利要求9所述的計算機可讀存儲媒質(zhì),其中該一個或多個映射包括一個全局分配映射(GAM),該全局分配映射包括關(guān)于已經(jīng)分配的多個數(shù)據(jù)盤區(qū)的信息;一個共享的全局分配映射(SGAM),該共享的全局分配映射包括關(guān)于具有至少一個未用頁面的多個混合盤區(qū)的信息;和/或一個索引分配映射(IAM),該索引分配映射包括關(guān)于一個表或索引使用的多個盤區(qū)的信息;并且其中在檢索所變化的數(shù)據(jù)之前,這些指令是可操作的以便讀取該一個或多個映射以確定是否分配了這些變化的盤區(qū);并且只有分配了這些變化的盤區(qū)時才對它們進行檢索。
13.如權(quán)利要求9所述的計算機可讀存儲媒質(zhì),其中這些程序指令是進一步可操作的以便檢測與所述增量備份文件相對應(yīng)的一個請求以執(zhí)行一個恢復操作;標識與該增量備份文件相關(guān)聯(lián)的一個完全數(shù)據(jù)庫備份文件;通過利用該增量備份文件以及與該增量備份文件相關(guān)聯(lián)的完全數(shù)據(jù)庫備份文件來執(zhí)行一個恢復操作而創(chuàng)建一個恢復的數(shù)據(jù)庫;并且將該恢復的數(shù)據(jù)庫告知一個數(shù)據(jù)庫服務(wù)器。
14.如權(quán)利要求13所述的計算機可讀存儲媒質(zhì),其中這些程序指令是進一步可操作的以便標識一個先前存儲的完全備份;檢索與該完全備份相關(guān)聯(lián)的一個映射;利用所述映射來標識自從一個前一次備份以來已經(jīng)變化的具體數(shù)據(jù);將該具體數(shù)據(jù)作為該先前存儲的完全備份的一個壓縮版本的一部分進行存儲;舍棄自從該前一次備份以來未發(fā)生變化的完全備份的完全備份數(shù)據(jù)。
15.一種用于執(zhí)行數(shù)據(jù)庫增量備份的系統(tǒng),該系統(tǒng)包括一個數(shù)據(jù)服務(wù)器;一個媒質(zhì)服務(wù)器;一個數(shù)據(jù)庫;以及一個或多個存儲裝置;其中該數(shù)據(jù)庫服務(wù)器被配置為用于響應(yīng)于檢測到一個執(zhí)行該數(shù)據(jù)庫的完全備份的請求而啟動一個完全備份;并且其中該媒質(zhì)服務(wù)器被配置為用于檢索與該完全備份相關(guān)聯(lián)的一個或多個映射,所述一個或多個映射包括自從一個前一次備份以來已經(jīng)變化的數(shù)據(jù)的一個標識;檢索所變化的數(shù)據(jù);將所變化的數(shù)據(jù)作為一個增量備份文件存儲在一個存儲裝置中;并且舍棄自從該前一次備份以來未發(fā)生變化的該完全備份的完全備份數(shù)據(jù)。
16.如權(quán)利要求15所述的系統(tǒng),其中在舍棄該快照之前,該媒質(zhì)服務(wù)器進一步被配置為用于存儲與該增量備份文件相關(guān)聯(lián)的所述一個或多個映射。
17.如權(quán)利要求16所述的系統(tǒng),其中該一個或多個映射包括一個差異變化映射(DCM), 該差異變化映射包括表明自該從該前一次備份以來已經(jīng)變化的數(shù)據(jù)的一個位圖,并且其中該系統(tǒng)被配置為用于重新設(shè)置與該數(shù)據(jù)庫相關(guān)聯(lián)的一個DCM位圖的實時副本,就如同響應(yīng)于所述請求而執(zhí)行了一次完全備份。
18.如權(quán)利要求15所述的系統(tǒng),其中該系統(tǒng)被配置為用于響應(yīng)于執(zhí)行該完全備份的請求而獲取該數(shù)據(jù)庫的一個快照。
19.如權(quán)利要求16所述的系統(tǒng),其中該一個或多個映射包括一個全局分配映射(GAM), 該全局分配映射包括關(guān)于已經(jīng)分配的多個數(shù)據(jù)盤區(qū)的信息;一個共享的全局分配映射 (SGAM),該共享的全局分配映射包括關(guān)于具有至少一個未用頁面的多個混合盤區(qū)的信息; 和/或一個索引分配映射(IAM),該索引分配映射包括關(guān)于一個表或索引使用的多個盤區(qū)的信息;并且其中在檢索所變化的數(shù)據(jù)之前,該系統(tǒng)被配置為用于讀取該一個或多個映射以確定是否分配了這些變化的盤區(qū);并且只有分配了這些變化的盤區(qū)時才對它們進行檢索。
20.如權(quán)利要求16所述的系統(tǒng),其中該媒質(zhì)服務(wù)器進一步被配置為用于檢測與所述增量備份文件相對應(yīng)的一個請求以執(zhí)行一個恢復操作;標識與該增量備份文件相關(guān)聯(lián)的一個完全數(shù)據(jù)庫備份文件;通過利用該增量備份文件以及與該增量備份文件相關(guān)聯(lián)的完全數(shù)據(jù)庫備份文件來執(zhí)行一個恢復操作而創(chuàng)建一個恢復的數(shù)據(jù)庫;并且將所恢復的數(shù)據(jù)庫告知一個數(shù)據(jù)庫服務(wù)器。
全文摘要
一種用于執(zhí)行微軟SQL服務(wù)器數(shù)據(jù)庫的增量備份的系統(tǒng)、方法和媒質(zhì)。創(chuàng)建該數(shù)據(jù)庫的一份快照,并且然后從這份快照中檢索標識出變化的盤區(qū)的一個映射。然后從該快照中檢索變化的盤區(qū)并將其存儲在一個備份存儲裝置中。為了進行恢復操作,將完全數(shù)據(jù)庫備份文件寫到存儲裝置中,并且然后將存儲的增量備份文件中的這些變化的盤區(qū)與這個完全備份文件合并。隨后,將這個重構(gòu)的文件告知數(shù)據(jù)庫服務(wù)器,并且然后由數(shù)據(jù)庫服務(wù)器裝載這個重構(gòu)的文件作為該數(shù)據(jù)庫的實時實例。
文檔編號G06F17/30GK102591982SQ20121000364
公開日2012年7月18日 申請日期2012年1月6日 優(yōu)先權(quán)日2011年1月7日
發(fā)明者D·薩拉夫, L·J·比蒂, M·A·佩恩, S·R·德沃斯 申請人:賽門鐵克公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1