星期三, 4月 18, 2018

SQL Server Log 檔損毀

遇到一次硬碟掛掉真的會讓人嚇到吃手手,還好 DATA 跟 LOG 是放在不同資料夾,所以只是有可能有資料遺失,想說先把資料庫卸離之後在移除 LOG 掛載回來,產生新的 LOG 就好。

於是就先轉乘 Emergency Mode,接著卸離,很順利的完成的,

alter database 資料庫名稱 set emergency
go

但事情才沒有想像中的順利,在附加的時候,因為原本的路徑已經不見了,就算我在附加時把 LOG 檔移除,他還是只會產生在原本的路徑,

這麼臨時,去哪生個硬碟來接,還好德瑞克大大才剛寫過一個強制產生 LOG 的介紹
FOR ATTACH_FOURCE_REBUILD_LOG 就可以重建 LOG 檔並指定路徑
CREATE DATABASE [資料庫名稱] ON
(FILENAME = N'F:\SQLData\MSSQL\資料庫名稱_Data.MDF')
FOR ATTACH_FORCE_REBUILD_LOG


參考:
SQLSERVER 資料庫損壞修復-1

[SQL Server] Fix: File activation failure. Msg 1813 Could not open new database. CREATE DATABASE is aborted.

沒有留言: