2019年3月7日木曜日

SQLServerのmdfファイルのサイズを取得する

SQL Server2014 StandardEditionにて確認

SqlServerで使用しているDBのファイルサイズを調べる場合

Select name, size From sys.database_files;
 
でmdfファイル、ldfファイルのサイズが取得できます。

tempdbについてもmdfファイルのサイズを取得したい場合は

Select name, size From sys.master_files;
 
を使いたくなりますが、なんだか結果が実際の値と合わない。。
Microsoftによるとsys.master_filesのサイズは、
データベース スナップショットの場合、size は、スナップショットがファイルに対して使用する中で最大の領域を表します。
とのこと。
でも、
USE tempdb
でDB変更すると
Select name, size From sys.database_files;
で実際のファイルサイズが取得できました。
でも、sys.database_filesの説明にも同じことしか書いてないのですが・・・