系統數據庫保存了有關(guān)SQL Server 的許多重要數據信息,這些數據的丟失將給系統帶來(lái)極為嚴重的后果,所以我們也必須對系統數據庫進(jìn)行備份。這樣一旦系統或數據庫失敗,則可以通過(guò)恢復來(lái)重建系統數據庫。在SQL Server 中重要的系統數據庫主要有master、 msdb、 distribution、 model。 雖然tempdb 也是系統數據庫但沒(méi)有必要對其進(jìn)行備份,因為SQL Server 每次啟動(dòng)都會(huì )重新創(chuàng )建該數據庫,而當SQL Server 停止運行時(shí),tempdb 數據庫中所有數據都會(huì )被自動(dòng)清除。在本節我們主要討論master 數據庫的備份和恢復,備份master 數據庫與備份用戶(hù)數據庫一樣,只要數據庫狀態(tài)發(fā)生變化我們就要通過(guò)備份來(lái)保存這些變化以防止一旦系統失。敗而導致數據丟失以下情況的發(fā)生往往要求我們立即對master 數據庫進(jìn)行備份。
增加或刪除用戶(hù)數據庫。但是如果增加或刪除文件或文件組,或用戶(hù)數據庫自動(dòng)增加來(lái)容納新添加的數據,這些操作并不對master 數據庫產(chǎn)生影響,所以此時(shí)不必對其進(jìn)行備份;
創(chuàng )建新的登錄或執行與登錄有關(guān)的操作,但是增加數據庫用戶(hù)并不影響master 數據庫;
創(chuàng )建或刪除備份設備;
為了進(jìn)行分布式查詢(xún)或遠程過(guò)程調用而對數據庫服務(wù)器進(jìn)行配置,如增加連接服務(wù)器或遠程登錄等。
對master 數據庫,我們常進(jìn)行完全數據庫備份。而恢復master 數據庫,卻有兩種途徑:或是使用master 數據庫當前備份,或是執行Rebuild Master Utility 來(lái)重建master 數據庫。如果master 數據庫遭到的損壞還不足以使SQL Server 無(wú)法啟動(dòng),我們可以使用master 數據庫的當前備份來(lái)執行恢復;如果master 遭到嚴重破壞,SQL Server 無(wú)法啟動(dòng),或者master 數據庫的當前備份也不能使用,我們則必須執行Rebuild Master Utility 來(lái)重建master 數據庫(此時(shí)master 數據庫中的所有以前的數據都將丟失),然后再使用備份來(lái)進(jìn)行恢復(如果master 的備份可以使用)。
使用Rebuild Master Utility 來(lái)重建master 主要執行以下步驟:
(1) 關(guān)掉SQL Server, 然后運行位于\ Microsoft SQL Server\80\tools\Binn 下的Rebuildem.exe 文件,出現Rebuild Master 對話(huà)框。如圖15-17 所示。

(2)單擊Browse 按鈕來(lái)瀏覽包括Data 文件的源目錄。
(3)單擊Setting 按鈕出現Collation Setting 對話(huà)框,如圖15-18 所示。
(4)單擊Rebuild 按鈕重建Master 數據庫。

重建master 數據庫只是整個(gè)恢復工作的開(kāi)始,然后要裝入master 數據庫的備份。如果備份不可用,則要重新創(chuàng )建任何必要的備份設備,接著(zhù)恢復msdb model distribution 數據庫以及用戶(hù)數據庫。對于那些在master 數據庫最近的備份后所創(chuàng )建的數據庫來(lái)說(shuō),如果其存在備份,則使用備份進(jìn)行恢復,如果不存在,只能通過(guò)重新連接數據庫文件(數據和日志文件)來(lái)重新恢復數據庫。
在SQL Server 中,我們可以拆開(kāi)數據庫的數據文件和事務(wù)日志文件,然后將它們重新連接到另外的服務(wù)器或同一個(gè)服務(wù)器。拆開(kāi)數據庫就是將數據庫從SQL Server 中刪除,但是保持數據和事務(wù)日志文件的完整性。然后事務(wù)日志和數據文件可在任何運行 SQL Server 的服務(wù)器上被重新連接成該數據庫。因此當您準備把數據庫從一臺機器移到另外的機器上但不重新創(chuàng )建數據庫,或者將數據庫移到另外的磁盤(pán)上您會(huì )發(fā)現數據庫的拆分和連接是很有用處的。

本章小結
本章主要討論數據庫備份和恢復的相關(guān)問(wèn)題。重點(diǎn)應了解各種不同數據庫備份方法的異同點(diǎn),學(xué)會(huì )根據不同實(shí)際情況制定相應的備份和恢復策略。了解備份設備的創(chuàng )建方法以及如何使用SQL Server Enterprise Manager 和BACKUP、 RESTORE 命令備份或恢復數據庫。
聯(lián)系客服