I just learned new DMF introduced in SQL Server 2011 CTP3, sys.dmosvolumestats which returns information about the operating system volume (directory) on which the specified databases and files are stored.
The required argument for this DMV are databaseid, file_id accordingly. Let me run this DMF for the one system database data and log files.
SELECT
database_id as DBID,file_id as FileId,volume_mount_point as VolumeMount,logical_volume_name as LogicalVolume,
file_system_type as SystemType,total_bytes as TotalBytes,available_bytes as AvailBytes,
is_read_only as [ReadOnly],is_compressed as Compressed
FROM sys.dm_os_volume_stats(1,1)
UNION ALL
SELECT
database_id as DBID,file_id as FileId,volume_mount_point as VolumeMount,logical_volume_name as LogicalVolume,
file_system_type as SystemType,total_bytes as TotalBytes,available_bytes as AvailBytes,
is_read_only as [ReadOnly],is_compressed as Compressed
FROM sys.dm_os_volume_stats(1,2)
GO
/*
Output:
DBID FileId VolumeMount LogicalVolume SystemType TotalBytes AvailBytes ReadOnly Compressed
1 1 C:\ OS NTFS 105804099584 30066728960 0 0
1 2 C:\ OS NTFS 105804099584 30066728960 0 0
*/
Read More..
 
[0 clicks]
Published under:
SQL Server Tips · · · ·