データ / ログファイルを別の場所に移動する
SQL Serverストレージコマンド
-- 1) Tell SQL Server the new path (nothing is moved yet):
ALTER DATABASE [Customer]
MODIFY FILE (NAME = N'Customer_data',
FILENAME = N'G:\Data\Customer_data.mdf');
-- 2) Take the database offline:
ALTER DATABASE [Customer] SET OFFLINE WITH ROLLBACK IMMEDIATE;
-- 3) Physically copy/move the file to the new path AT THE OPERATING SYSTEM level (G:\Data\...).
-- 4) Bring it online:
ALTER DATABASE [Customer] SET ONLINE;概要
データベースファイルの物理的な場所を変更する: 新しいパスをメタデータに定義し、データベースをオフラインにしている間にファイルを物理的に移動してから、データベースをオンラインにする。
使用する場面
ディスクを交換する場合や、領域確保のために別のドライブへ移動する場合。
注意
OFFLINE + ROLLBACK IMMEDIATE はすべてのアクティブな接続を切断するため、ダウンタイムを計画する。OS 上で実際にファイルを新しいパスへコピーする前にデータベースを ONLINE にすると、データベースは SUSPECT になる。tempdb には別の方法が必要 (MODIFY FILE + SQL Server サービスの再起動)。