Fullt på disk?

Oopps! Upgrade your browser pretty please. Oopps! Upgrade your browser pretty please.

Att diskar blir fulla är inte helt ovanligt. När detta händer tar man vanligtvis en titt i filsystemet för att se vad det är som tar plats.

Måste man göra det?

Nej, from SQL Server 2012 kan vi faktiskt ställa en fråga och få svar på hur situationen ser ut på våra datadiskar. Lösningen är en Dynamic Management Function vid namn sys.dm_os_volume_stats.

Denna dmf har bla info om hur stor vår disk är, hur mycket utrymme vi har kvar, vad volymen heter mm där databasfilen ligger. Inparametrar till funktionen är databasid och filid. Eftersom det är en funktion kan vi kombinera denna med andra systemtabeller, vyer och på så sätt få en skaplig överblick utan att behöva gå in i filsystemet och göra den obligatoriska okulärbesiktningen.

Tex:

 
SELECT db_name(mf.database_id) as [Database Name],
 mf.name as [Database File],
 mf.size * 8 / 1024 as [Databasefile Size (MB)],
 vs.volume_mount_point as [Drive],
 vs.total_bytes/1024/1024 as [Drive Size (MB)],
 vs.available_bytes/1024/1024 as [Available Space (MB)],
 mf.physical_name as [Physical Name]
FROM sys.master_files mf
CROSS APPLY sys.dm_os_volume_stats(mf.database_id, mf.file_id) vs
ORDER BY mf.name