[SQL Server Tip]使用 ALTER DATABASE 移動資料庫 ALTER DATABASE to Move Databases
原文來自於 : https://technet.microsoft.com/zh-tw/magazine/gg452698(en-us).aspx
你可以使用 ALTER
DATABASE 陳述式移動任何系統或使用者自訂資料庫檔案(除了 Resource database 相關檔案例外)。移動檔案必須指定現有邏輯名稱和新的實體檔案路徑,而且這樣的方式一次只能移動一個檔案。
計畫移動資料或記錄檔案請遵循以下步驟
1.取得資料庫檔案的邏輯名稱
USE master
SELECT name, physical_name
FROM sys.master_files
WHERE database_id = DB_ID('Personnel');
2.設定資料庫為離線工作
ALTER DATABASE Personnel
SET offline
GO
3.對於要移動的每個檔案至新路徑請執行以下陳述式
ALTER DATABASE Personnel
MODIFY FILE ( NAME = Personnel_Data, FILENAME =
'C:\Data\Personnel_Data.mdf')
GO
4.重複步驟3移動其他資料和紀錄檔案
5.設定資料庫為線上工作
ALTER DATABASE Personnel
SET online
GO
驗證檔案變更
USE master
SELECT name,
physical_name
FROM sys.master_files
WHERE database_id = DB_ID('Personnel');
你也可能以邏輯名稱來移動全文檢索目錄。請注意當您指定新目錄的位置時,只需指定 new_path
,而不需指定 new_path/file_name
。
計畫移動全文檢索目錄請遵循以下步驟
1.設定資料庫為離線工作
ALTER DATABASE database_name
SET offline
GO
2. 對於要移動的每個全文檢索目錄至新路徑請執行以下陳述式
ALTER DATABASE database_name
MODIFY FILE ( NAME = logical_name, FILENAME = 'new_path')
GO
3.重複步驟2移動其他必要的全文檢索目錄檔案
4. 設定資料庫為線上工作
ALTER DATABASE database_name
SET online
GO
關於ALTER DATABASE更多使用請看Change
Settings with ALTER DATABASE in SQL Server 2008.
來源出處: Microsoft Press
book Microsoft
SQL Server 2008 Administrator’s Pocket Consultant, Second Edition by William R. Stanek.