SQL Server のインストール後にデータディレクトリを変更する手順を紹介します。
起動パラメーターの変更
SQL Server の起動パラメーターで master データベース、masterデータベースのログ、エラーログ、を指定しているため、起動パラメータを変更します。
SQL Server 構成マネージャーを起動します。左側のツリービューで[SQL Server のサービス]ノードをクリックして選択します。右側のエリアにサービスの一覧が表示されます。
サービスの[SQL Server]をクリックして選択し、右クリックします。ポップアップメニューが表示されますので[プロパティ]メニューをクリックします。
[SQL Server のプロパティ]ダイアログが表示されます。
ダイアログの[起動時のパラメーター]タブをクリックして選択します。下図の画面が表示されます。
[既存のパラメータ]の欄に、master データベース、masterデータベースのログ、エラーログファイルが指定されています。
ファイルパスを変更したいディレクトリのパスに変更します。変更後[OK]ボタンをクリックします。
加えた変更は、SQL Serverのサービスを再起動しないと有効にならない旨のメッセージダイアログが表示されます。OKボタンをクリックします。
master データベースの移動
SQL Server Management Studio を起動し、データベースノード内の[システムデータベース]のノードを開きます。ノード内の[master]データベースのノードを選択し、右クリックしてポップアップメニューを表示し[プロパティ]メニューを選択します。
[データベースのプロパティ]ダイアログが表示されます。
左側の[ページの選択]エリアの[ファイル]を選択します。下図の画面が表示されます。[データベース ファイル]のセクションにデータベースのファイルと、ファイルの保存パスが表示されています。
[SQL Server 構成マネージャー]を開きます。左側のツリービューで[SQL Server のサービス]のノードをクリックして選択します。右側にSQL Serverのサービスが表示されますので、リストから[SQL Server]のサービスの項目をクリックして選択し、右クリックのポップアップメニューを表しします。メニューの[停止]をクリックし、SQL Serverを停止します。
SQL Serverが停止しました。
先ほど確認した、SQL Serverのデーターファイルを開きます。データファイルの"master.mdf", "masterlog.ldf"ファイルを、SQL Serverの "起動パラメーター" で指定した新しいパスに移動します。
ログファイルも SQL Serverの起動パラメーターで指定した新しい場所に移動します。
![](https://resources.ipentec.com/document/image/sql-server-change-data-directory-after-install-19)
[SQL Server 構成マネージャー]に戻り、SQL Server のサービスを開始します。
model, msdb データベースの移動
続いて、model, msdb データベースを新しい場所に移動します。この2つのデータベースの移動にはSQL文を実行します。下図のSQL文を実行します。
model データベース
ALTER DATABASE model MODIFY FILE ( NAME = modeldev , FILENAME = '(変更後のデータディレクトリ)\model.mdf' );
ALTER DATABASE model MODIFY FILE ( NAME = modellog , FILENAME = '(変更後のデータディレクトリ)\modellog.ldf' );
msdb データベース
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBData , FILENAME = '(変更後のデータディレクトリ)\MSDBData.mdf' );
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBLog , FILENAME = '(変更後のデータディレクトリ)\MSDBLog.ldf' );
例
ALTER DATABASE model MODIFY FILE ( NAME = modeldev , FILENAME = 'E:\SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\model.mdf' );
ALTER DATABASE model MODIFY FILE ( NAME = modellog , FILENAME = 'E:\SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\modellog.ldf' );
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBData , FILENAME = 'E:\SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\MSDBData.mdf' );
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBLog , FILENAME = 'E:\SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\MSDBLog.ldf' );
SQL文を実行します。
正常に実行できると、次回のデータベース起動時に新しいパスが使用される旨のメッセージが表示されます。
SQL の実行後、SQL Server 構成マネージャーでSQL Serverを停止します。停止後、model, msdb データベースを先のSQL文で指定した、新しいパスの場所に移動します。
tempdb データベースの移動
tempdbデータベースの移動にもSQL文を実行します。下図のSQL文を実行します。
ALTER DATABASE tempdb MODIFY FILE ( NAME = tempdev, FILENAME = '(変更後のデータディレクトリ)\tempdb.mdf' );
ALTER DATABASE tempdb MODIFY FILE ( NAME = templog, FILENAME = '(変更後のデータディレクトリ)\tempdb.ldf' );
例
ALTER DATABASE tempdb MODIFY FILE ( NAME = tempdev, FILENAME = 'E:\SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\tempdb.mdf' );
ALTER DATABASE tempdb MODIFY FILE ( NAME = templog, FILENAME = 'E:\SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\tempdb.ldf' );
SQL文を実行します。
次回のデータベース起動時に新しいパスが使用される旨のメッセージが表示されます。
SQL Server 構成マネージャーでSQL Serverを停止します。停止後、データディレクトリにある、modelデータベース、MSDBデータベース、tempdbデータベースのファイルを新しいディレクトリに移動します。|
デフォルトディレクトリの変更
SQL Server Management Studio を起動します。左側の[オブジェクトエクスプローラー]のツリービュでサーバーのノードを選択します。
右クリックしてポップアップメニューを表示します。メニューの[プロパティ]をクリックします。
[サーバーのプロパティ]ダイアログが表示されます。
左側の[ページの選択]エリアの[データベースの設定]をクリックします。下図の画面が表示されます。
ダイアログの下部の[データベースの既定の場所]セクションの[データ]欄がデフォルトのデータディレクトリのパス、[ログ]欄がデフォルトのログディレクトリのパス、[バックアップ]欄がデフォルトのバックアップディレクトリのパスになります。それぞれのパスを新しいディレクトリに変更します。変更後ダイアログ下部の[OK]ボタンをクリックします。
レジストリの確認
SQL Server起動パラメーターの確認
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQLServer\Parameters
にmasterデータベースと、ログファイルのパスが指定されています。先に紹介した手順で[SQL Server 構成マネージャー]を開きサービスのプロパティで変更していれば、こちらの値は変更後の値が入力されているはずです。
SQL Server Agent のエラーログファイルの設定
SQL Server Agentのエラーログの場所も新しいディレクトリに変更します。レジストリエディタを開き、
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.MSSQLSERVER\SQLServerAgent
の
ErrorLogFile 値に入っているパスを、新しいログディレクトリのパスに変更します。
以上で設定は完了です。
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2019-12-09
作成日: 2016-10-24