猫型iPS細胞研究所

Windows、Linux、iOS、DB、Network

DataBase SQLServer

SQLSERVER インストール後にDataをDドライブ(別ドライブへ)移動する方法

投稿日:

通常OSはCドライブ、データはDドライブなどの別ドライブを使用します。
SQLSERVERではデータの肥大化が起こりうる実データファイル(mdfやldf)をCドライブ以外に変更したい場面は多いはずです。
以下その手順です。

下記その手順です。

SQLSERVERで保持しているロケーションを変更する

以下のSELECT文でデータベース毎に保持ているロケーションは確認できすます。
もし既にデータベースを作成している場合はTestDBの部分を変更して確認してみてください。
2014の初期状態ではmaster、model、msdb、tempdbという4つのDBがありました。

SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'TestDB');

確認ができたら下記Alter文で設定を変更します。
下記の例の場合は事前にDドライブにMSQSSQL\DATAというフォルダを作成しておきます。

ALTER DATABASE distribution MODIFY FILE ( NAME = 'distribution' , FILENAME = 'D:\MSSQL\DATA\distribution.MDF' );
ALTER DATABASE distribution MODIFY FILE ( NAME = 'distribution_log' , FILENAME = 'D:\MSSQL\DATA\distribution.LDF' );
ALTER DATABASE master MODIFY FILE ( NAME = 'master' , FILENAME = 'D:\MSSQL\DATA\master.mdf' );
ALTER DATABASE master MODIFY FILE ( NAME = 'mastlog' , FILENAME = 'D:\MSSQL\DATA\mastlog.ldf' );
ALTER DATABASE model MODIFY FILE ( NAME = 'modeldev' , FILENAME = 'D:\MSSQL\DATA\model.mdf' );
ALTER DATABASE model MODIFY FILE ( NAME = 'modellog' , FILENAME = 'D:\MSSQL\DATA\modellog.ldf' );
ALTER DATABASE MSDB MODIFY FILE ( NAME = 'MSDBData' , FILENAME = 'D:\MSSQL\DATA\MSDBData.mdf' );
ALTER DATABASE MSDB MODIFY FILE ( NAME = 'MSDBLog' , FILENAME = 'D:\MSSQL\DATA\MSDBLog.ldf' );
ALTER DATABASE Stream2 MODIFY FILE ( NAME = 'Stream2' , FILENAME = 'D:\MSSQL\DATA\Stream2.mdf' );
ALTER DATABASE Stream2 MODIFY FILE ( NAME = 'Stream2_log' , FILENAME = 'D:\MSSQL\DATA\Stream2_log.ldf' );
ALTER DATABASE tempdb MODIFY FILE ( NAME = 'tempdev' , FILENAME = 'D:\MSSQL\DATA\tempdb.mdf' );
ALTER DATABASE tempdb MODIFY FILE ( NAME = 'templog' , FILENAME = 'D:\MSSQL\DATA\templog.ldf' );
ALTER DATABASE TESTDB MODIFY FILE ( NAME = 'TESTDB' , FILENAME = 'D:\MSSQL\DATA\TESTDB.mdf' );
ALTER DATABASE TESTDB MODIFY FILE ( NAME = 'TESTDB_log' , FILENAME = 'D:\MSSQL\DATA\TESTDB_log.ldf' );

SQLSERVERでを停止して実ファイルを移動します

起動時のパラメーターを変更

Sql Server Configuration Managerより MSSQLSERVERを右クリックしてプロパティ。起動時のパラメーターを変更します。
ログファイルは変更しなくてもいいのですが、今回の例ではmaster.mdfとmastlog.ldfは変更する必用があります。
-dD:\MSSQL\DATA\master.mdf
-eC:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log\ERRORLOG
-lD:\MSSQL\DATA\mastlog.ldf

SQLSERVERでをを再起動します。

以上の手順で変更できたと思います。

Gooleアドセンス用336

Gooleアドセンス用336

-DataBase, SQLServer
-,

執筆者:

関連記事

sqlserver

「.NET」と「ASP.NET」からのSQL Serverへのコネクションを確認する(2)

「.NET」と「ASP.NET」からの接続には大きな違いがあります。 それは普通の?(exe形式の)アプリケーションか、Webアプリケーションかです。 この違いはアプリの終了というタイミングに大きく影 …

mysql

vmwareをアップデートしたらMySQLが起動しなくなった

[root@centos100 log]# service mysql restart MySQL server PID file could not be found! [失敗] Starting …

sqlserver

SQL Server Browser を起動する方法

SQL Server構成マネージャーより起動できるはずが、なぜか開始も停止もできない。 コントロール パネル > システムとセキュリティ > 管理ツール > サービス を見ると、SQL Server …

mysql

SQLで時間の重複をチェックする

同じ期間のデータは事前にチェックしてエラーにするという処理は、 あらゆる場面で想定されそうなことですが、 以外と難しかったのでここに方法をのこしておきます。 他にも素晴らしい方法があると思いますが、 …

sqlserver

SQL Server Management Studio でテーブルが変更できない

私は以前はOracleをメインで使用し、そしてここ数年間はMySQLをメインで使用しています。SQL Serverは少しかじった程度といえるでしょう。 こんな私が選択したのはSQL Server Ma …