了解最新公司動態及行業資訊
工作日數據-供參考
備份數據庫有兩種方式,一種是備份數據庫文件,另一種是直接拷貝數據庫文件mdf和日志文件ldf。下面將主要討論后者的備份和恢復。本文假設您熟練使用(企業管理器)和呃(查詢分析器)
1、普通備份和SQL數據庫恢復方法
在普通模式下,當我們要備份數據庫時,必須先斷開數據庫與正在運行的數據服務器的連接,或者停止整個數據庫服務器,然后再復制文件。
刪除數據庫的命令:數據庫名稱
連接數據庫的命令:或e_db
[@=]′′,[@=]′′[,...16]
e_db[@=]′′,[@=]′′
使用此方法可以正確恢復.0和.0的數據庫文件。重點是備份的時候mdf和ldf文件都要備份。 mdf文件為數據庫數據文件,ldf為數據庫日志文件。
例子:
假設數據庫是test,它的數據文件是.mdf,它的日志文件是.ldf。讓我們討論如何備份和恢復數據庫。
卸載數據庫:'test'
連接數據庫:'test','C:\MSSQLData.mdf','C:\MSSQLData.ldf'
e_db'test','C:\MSSQLData.mdf'
2、只有 mdf 文件的恢復技術
由于種種原因,如果我們當時只備份mdf文件,恢復起來會很麻煩。
如果你的mdf文件是當前數據庫生成的,那么幸運的是,也許你可以使用or e_db來恢復數據庫,但是會出現類似下面的提示信息
設備激活錯誤。物理文件名 'C:\MSSQLdata.LDF' 可能有誤。
已創建名為“C:\MSSQLData.LDF”的新日志文件。
但是,如果您的數據庫文件是從另一臺計算機上復制的,那么很遺憾,上述解決方案可能不起作用。您可能會收到類似于以下的錯誤消息
服務器:消息 1813武漢數據恢復,級別 16,狀態 2,第 1 行
無法打開新數據庫“測試”。將終止。
設備激活錯誤。物理文件名 'd:.LDF' 可能有誤。
怎么辦?不用擔心,這里有一個如何恢復的示例。
A.我們使用默認的方法創建一個數據庫(例如test)進行恢復??梢詢冉?。
B.停止數據庫服務器。
C.刪除剛剛生成的數據庫的日志文件.ldf,用要恢復的數據庫mdf文件覆蓋剛剛生成的數據庫數據文件.mdf。
D.啟動數據庫服務器。此時,您將看到數據庫測試的狀態為“可疑”。目前無法對該數據庫執行任何操作。
E.設置數據庫允許直接操作系統表。對于此操作,可以選擇其中的數據庫服務器,右鍵單擊,選擇“屬性”,在“服務器設置”頁面中選擇“允許直接修改系統目錄”。也可以使用下面的語句來實現。
去
'',1
去
想法
去
F。將測試設置為緊急修復模式
=-=DB_ID('test')
此時可以看到數據庫處于“只讀懷疑離線緊急模式”,可以看到數據庫中的表,但只能看到系統表
G.下面進行實際的恢復操作,重建數據庫日志文件
('test','C:\MSSQLData.ldf')
執行過程中,如果遇到如下提示:
服務器:消息 5030,級別 16,狀態 1,第 1 行
無法為此操作獨占鎖定數據庫。
DBCC 執行完成。如果 DBCC 輸出錯誤信息,請聯系您的系統管理員。
表示您的其他程序正在使用此數據庫。如果只是使用了步驟F中打開測試庫的系統表,可以退出。
警告:數據庫“test”的日志已重建。事務一致性已丟失。應運行以驗證物理一致性。必須重置數據庫選項,并且可能需要刪除多余的日志文件。
DBCC 執行完成。如果 DBCC 輸出錯誤信息,請聯系您的系統管理員。
這時候打開,會看到數據庫的狀態是“only for DBO”。至此,就可以訪問數據庫中的用戶表了。
H.驗證數據庫一致性(可選)
('測試')
一般執行結果如下:
發現 0 個分配錯誤和 0 個一致性錯誤(在數據庫“測試”中)。
DBCC 執行完成。如果 DBCC 輸出錯誤信息,請聯系您的系統管理員。
我。將數據庫設置為正常狀態
'測試','','假'
如果沒有錯誤,那么恭喜你武漢數據恢復,現在可以正常使用恢復的數據庫了。
J。最后一步,我們需要恢復步驟E中設置的“允許直接修改系統目錄”。因為直接操作表通常是比較危險的事情。當然我們可以在里面恢復,或者用下面的語句來完成
'',0
去
想法
去