SQL Server Diskte Kalan Boş Alan Tespiti

SQL Server üstlendiği rol gereği sürekli veri kaydı alan bir sistem ve üzerinde kurulu olduğu disk boyutunun belli aralıklarla kontrol edilmesi gerekmektedir. Yazımızda SQL Server veri tabanlarının üzerinde kurulu bulunduğu disklerin boş alanının tespit edilmesini üç yöntem ile inceliyor olacağız.

Birinci Yöntem

Bu yöntem ile sunucuda bulunan bütün disklerin boş alanı MB cinsinden sorgulanır.

EXEC MASTER..xp_fixeddrives

İkinci Yöntem

Bu yöntem de üzerinde veri tabanı dosyalarının olduğu disklerin boş alanı sorgulanıyor. Örnekte “C” ve “E” disklerinde veri tabanı dosyaları bolunuyor, bu sebeple yukarıdaki örnekte görünen “D” diski ile ilgili bilgi bulunmamaktadır.

SELECT DISTINCT dovs.logical_volume_name AS LogicalName,
dovs.volume_mount_point AS Drive,
CONVERT(INT,dovs.available_bytes/1048576.0) AS FreeSpaceInMB
FROM sys.master_files mf
CROSS APPLY sys.dm_os_volume_stats(mf.database_id, mf.FILE_ID) dovs
ORDER BY FreeSpaceInMB ASC
GO

Üçüncü Yöntem

Bu yöntem ikinci yöntem ile aynı çalışmaktadır. Fark olarak her bir veri tabanı ve üzerinde bulunduğu diskin boyutunu farkı satırda vermektedir.

SELECT DISTINCT DB_NAME(dovs.database_id) DBName,
dovs.logical_volume_name AS LogicalName,
dovs.volume_mount_point AS Drive,
CONVERT(INT,dovs.available_bytes/1048576.0) AS FreeSpaceInMB
FROM sys.master_files mf
CROSS APPLY sys.dm_os_volume_stats(mf.database_id, mf.FILE_ID) dovs
ORDER BY FreeSpaceInMB ASC
GO
image_pdfPDF'ye Aktarimage_printYazdır

Yorum Yapın

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Translate »
%d blogcu bunu beğendi: