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