Müzakirə

SQL Diagnostic Scripti

Başladan Cadaloz · 26 iyl 2026 21:16 · 1 Baxış · 0 Cavablar
Mövzunu Açan #0
SQL sunucularının performansını izlemek ve sorunları teşhis etmek için kullanılan diagnostic scriptleri, yöneticilere sistemin genel durumu hakkında detaylı bilgiler sunar. Bu tür scriptler, genellikle sistem kaynaklarının kullanımı, sorgu performansı, bekleme istatistikleri ve daha fazlası hakkında veriler toplar. Aşağıda, SQL sunucusunda kullanılabilecek temel bir diagnostic scriptinin unsurlarını ele alacağım.

İlk olarak, sistemin genel durumu hakkında bilgi almak için kullanılan bazı temel sorgular vardır. Örneğin, mevcut veritabanlarının boyutunu görmek için şu sorgu kullanılabilir:

CODE
12345678  
SELECT 
    name AS DatabaseName, 
    size * 8 / 1024 AS SizeMB 
FROM 
    sys.master_files 
WHERE 
    type_desc = 'ROWS';  


Bu sorgu, tüm veritabanlarının boyutunu megabayt cinsinden gösterir ve yöneticilerin hangi veritabanlarının daha fazla depolama alanı kullandığını anlamalarına yardımcı olur.

Ayrıca, sorguların ne kadar sürede çalıştığını görmek için aşağıdaki sorguyu kullanabiliriz:

CODE
12345678910111213  
SELECT 
    TOP 10 
    total_worker_time AS TotalCPUTime, 
    execution_count AS ExecutionCount, 
    total_elapsed_time / 1000 AS TotalElapsedTimeMS, 
    sql_text.text AS QueryText 
FROM 
    sys.dm_exec_query_stats AS stats 
CROSS APPLY 
    sys.dm_exec_sql_text(stats.sql_handle) AS sql_text 
ORDER BY 
    total_elapsed_time DESC;  


Bu sorgu, en fazla zaman alan 10 sorguyu listeler ve yöneticilerin optimizasyon yapması gereken alanları belirlemesine yardımcı olur.

Son olarak, bekleme istatistiklerini incelemek de önemlidir. SQL Server'da bekleme istatistikleri, performansı etkileyen çeşitli faktörleri anlamak için kritik öneme sahiptir. Aşağıdaki sorgu, en yaygın bekleme türlerini ve bunların süresini gösterir:

CODE
1234567891011  
SELECT 
    wait_type, 
    wait_time_ms / 1000.0 AS WaitTimeSec, 
    waiting_tasks_count AS WaitCount 
FROM 
    sys.dm_os_wait_stats 
WHERE 
    wait_time_ms > 0 
ORDER BY 
    wait_time_ms DESC;  


Bu bilgiler, yöneticilerin sistemdeki darboğazları tanımlamasına ve iyileştirme stratejileri geliştirmesine olanak tanır. SQL diagnostic scriptleri, sunucu üzerindeki problemleri tespit etmek ve performansı artırmak için vazgeçilmez bir araçtır. Bu scriptlerin düzenli olarak çalıştırılması, sistemin sağlığını korumak açısından büyük önem taşır.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi