[MSSQL 2000] 卸離及附加系統資料庫

SQL 2000 卸離及附加系統資料庫

因為公司policy的關係需將系統資料庫的位置搬出C槽,先前已在SQL 2008上執行過許多次,SQL 2000倒是第一次,所以還事先照著官網上的步驟(http://support.microsoft.com/kb/224071)在測試機上作過二次後才敢在正式機上執行,沒料到mdf檔在copy的過程中損毀,接著會導致SQL Server服務異常無法重啟…

以下步驟可模擬出Model資料庫損毀後SQL Server的異常。在開始前請先備份Master資料庫以供最後復原SQL Server用。

clip_image002

(1) 使用SQL Enterprise Manger新增啟動參數-c –m –T3608

clip_image004

(2) 重啟SQL

(3) 卸離Model 資料庫

clip_image006

(4) Copy model.mdf及modellog.ldf至其它drive location

clip_image008

(5) 以visual studio修改model.mdf檔,強制破壞 model.mdf

clip_image010

(6) 附加被破壞的model檔時偵測到model檔有問題無法附加。

clip_image012

此時SQL Server已經開始不正常了….

clip_image014

無法下任何指令:

clip_image016

 

SQL error message建議以最小組態啟動SQL server

SQL2000_model_crash

如果model.mdf事先有備份的話,可以-f參數啟動SQL後再次附加Model資料庫;否則就得將事先備份的master.mdf及mastlog.ldf還原,以放棄對Model資料庫卸離及附加動作並復原SQL Server。