在SQL Server 中恢復數據的幾種辦法:
1.自然就是 backup 的 恢復方法 backup 這種方法是最安全,最可靠的方法操作起來也很簡單,只要在 SQL Server 的 enterprise manager中選擇 restore 就可以了。
用T-SQL 也可以完成:
RESTORE DATABASE test FROM DISK = ’c:\mssql7\backup\test.bak’
當然這是用的 文件恢復,如果是 設備恢復 自然也是可以的。
2.可是有的時候,SQL server 是在我們毫無准備的情況下癱瘓的,有的時候是伴隨者 NT 的癱瘓而引起的,(這個時候,豆腐想 牆上 Gates 的畫像有仍了幾個 西紅柿),怎麼辦呢?這個時候就只有采用 SQL Server 的 t-sql 中提供的系統存儲過程了:
sp_atach_db
在這裡舉一個簡單的例子:
sp_attach_db @dbname = N’pubs’,
@filename1 = N’c:\mssql7\data\pubs.mdf’,
@filename2 = N’c:\mssql7\data\pubs_log.ldf’
這種方法應該說是有很高的成功率的,不過在 實踐中 豆腐聽說 這樣後,數據庫成為只讀的,那也沒有辦法了。如果只有 mdf 沒有 ldf 文件的話,可以使用 sp_attach_single_file
sp_attach_single_file_db @dbname = ’pubs’, @physname = ’c:\mssql7\data\pubs.mdf’
這個方法本來是 用來 對 sp_deatach 的操作的反操作,不過直接使用也還是可以成功的。