經(jīng)常更新和優(yōu)化的數(shù)據(jù)庫可以以更快的速度運行。然而,將數(shù)據(jù)庫直接從一個比較小的磁盤轉(zhuǎn)移到另一個比較大的磁盤,這樣的想法是不可能實現(xiàn)的。在轉(zhuǎn)移數(shù)據(jù)庫之前,你必須將數(shù)據(jù)庫斷開所有的操作。使用sp_detach_db存儲程序可以將數(shù)據(jù)庫從sql server 2000分離開來,從而達到數(shù)據(jù)庫的離線操作。同樣可以運行另一個存儲程序sp_attach_db將數(shù)據(jù)庫重新連接。
sp_detach_db是一個功能強大的存儲程序,它只能由系統(tǒng)管理人員運行。除了具備“分離”功能之外,這一程序在分離數(shù)據(jù)庫之前也自動運行所有表的update statistics。
以下的范例分離了mydatabase數(shù)據(jù)庫:
exec sp_detach_db 'mydatabase'
現(xiàn)在可以轉(zhuǎn)移我們的數(shù)據(jù)庫到一個新的磁盤并重新連接它們。連接數(shù)據(jù)庫操作可能比較復(fù)雜,除了提供數(shù)據(jù)庫名稱,你可以選擇sql server數(shù)據(jù)庫文件的位置。
在以下的范例中,我們可以從一個新位置d:/anyfolder/:重新連接數(shù)據(jù)庫。
execsp_attach_db 'mydatabase',
@filename1='d:/anyfolder/mydatabase_data.mdf',
@filename2='d:/anyfolder/mydatabase_log.ldf'
新聞熱點
疑難解答
圖片精選