SQL Serverのインストール中に、tempdbの場所を「C:」ではなく「F:」に指定したと「考え」ましたが、tempdb.mdfとtemplog.ldfは「F:」にありますが、3 ndfセカンダリデータファイルは「C:」にあります。
次の手順を実行して、.ndfファイルを移動することを考えています。
ALTER DATABASE tempdb MODIFY FILE ( NAME = temp2 , FILENAME = 'F:\MSSQLData\temp2' )
ALTER DATABASE tempdb MODIFY FILE ( NAME = temp3 , FILENAME = 'F:\MSSQLData\temp3' )
ALTER DATABASE tempdb MODIFY FILE ( NAME = temp4 , FILENAME = 'F:\MSSQLData\temp4' )
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');
それが最善のアプローチですか?インスタンスは3つの小さなデータベースのみをサポートします(合計10GB未満)。
最良のアプローチは、ドキュメントの tempdbデータベースの移動 セクションにあるものです。
あなたの方法は、あなたがリストした2ndと3rdのステップと理由を除いて、マイクロソフトが推奨するものに近いです:
TempdbはSQL Serverのインスタンスが起動するたびに再作成されるため、データファイルとログファイルを物理的に移動する必要はありません。
前述のように、ファイルが存在しない場合は、起動時に作成されます。したがって、問題は、それらを古い場所から削除して、SQL Serverが新しい場所を作成しないようにするかどうかです。または、SQL Serverが新しいファイルを作成する必要がないようにファイルを移動するには?これらの1つは他よりも速いと主張することができます。それが問題ではない場合は、自分に最も適した方を使用してください。
1つの要因は、ファイルの即時初期化がオンになっているかどうかです。これがないと、データファイルを作成する時間が長くなります。
私の推測では、そのファイルサイズでは、大きな違いは見られません。つまり、どちらの方法を使用します。