今天有個老數據庫要查看下,想把它附加到sqlserver2005中,可是發現ldf不見了,一直出錯。找了下別人的方法 sql
只有一個mdf文件如Test.mdf,附加數據庫 數據庫
1.在SQL Server中新建一個數據庫名爲Test(注,文件名爲Test.mdf真正的的數據庫不必定是這個名,先在SQL Server中導入過程當中看看是否是這個名,必定要和真正的數據庫名稱一致) sqlserver
2.中止SQL Server,把Test.mdf替換掉 日誌
3.從新啓動SQL Server,若是你點一下Test數據庫會有錯誤提示,不用管它 server
4.打開一查詢窗口,進行如下操做: io
①alter database Test set emergency 設定Test狀態爲緊急模式 配置
②sp_dboption 'Test','single user','false' 設定數據庫模式爲"單一使用者" 方法
③dbcc checkdb(Test,repair_allow_data_loss) 此句爲關鍵語句,意爲檢查指定數據庫全部數據的配置、結構和邏輯完整性。這一步操做會從新創建ldf日誌文件 數據
④sp_dboption 'Test','single user','false' 還原Test數據庫模式 查詢
⑤alter database Test set online 設定Test數據庫狀態爲online
注第③步不少人不會成功,緣由在於,系統重建日誌文件時找不到路徑,須要手動建立路徑。方法爲:在第③步的錯誤提示中有ldf文件的路徑,此路徑信息包含在原mdf文件中,按此信息依次建立文件夾後,從新執行這條SQL語句。
最後成功後,建議把此數據庫分離,換個你先要的名稱,從新附加一次。