很少有微軟KB文章一步一步地教你如何把SQL Server系統數據庫從一個地方遷移到另一個地方。遷移SQL Server 2000系統數據庫比遷移SQL Server 2005數據庫要麻煩的多。我沒有機會遷移SQL Server 2008,但是我的猜測是這個過程跟SQL Server 2005一樣簡單。
以下的KB文章告訴你如何一步一步地遷移數據庫,但是這個過程不需要如下顯示的那樣詳細。
如何通過使用 SQL Server 中的 Detach 和 Attach 函數將 SQL Server 數據庫移到新位置
移動系統數據庫
遷移所有的SQL Server 2005系統數據庫
一旦你看了上面的KB文章,你可以立即按照下面的步驟遷移數據庫。
1、 更新SQL Server的-d和-l啟動參數到主數據和日志文件新的位置。
2、 執行ALTER DATABASE命令來更改這個model,msdb和tempdb數據庫文件的文件位置。
3、 關掉SQL Server。
4、 把MDF和LDF文件移到步驟一和步驟二指定的主數據庫、model和msdb數據庫的新位置。
5、 啟動SQL Server
6、 刪除舊的tempdb文件
除了主數據庫、model、msdb和tempdb數據庫,SQL Server 2005還引進了mssqlsystemresource數據庫。微軟建議不要遷移數據庫,但是如果你確實想遷移數據庫,你也可以按照下面的步驟進行。
1、 更新SQL Server的-d和-l啟動參數到主數據和日志文件新的位置。
遷移所有的SQL Server 2000系統數據庫
一旦你看了上面的KB文章,你可以立即按照下面的步驟來遷移所有的系統數據庫。
1、 更新SQL Server的-d和-l啟動參數到主數據和日志文件新的位置。
2、 執行ALTER DATABASE命令來更改這個model,msdb和tempdb數據庫文件的文件位置。
3、 關掉SQL Server
4、 把MDF和LDF文件遷移到步驟一中指定的主數據庫新位置。
5、 通過增加三個啟動參數-c,-m和-T3608把SQL Server放在一個單獨的用戶模式中,接著啟動SQL Server。
6、 把msdb和model數據庫分離。
7、 把MDF和LDF文件移到model和msdb數據庫的新位置。
8、 從它本身的新位置附上model數據庫。
9、 關掉SQL Server
10、 把在步驟五中增加的啟動選項刪除。
11、 啟動SQL Server
12、 附加一個msdb數據庫
13、 刪除舊的tempdb文件
雖然看起來仍然會有很多步驟,但是如果你在一個時間段移動一個數據庫,那么這會同樣減少關掉和啟動SQL Server的需要。正如你看到的,如果你不移動mssqlsystemresource數據庫,那么遷移所有的SQL Server 2005數據庫比遷移SQL Server 2000數據庫更容易