dataiotech Labs
dbaguidedbaguideDBAdataxtoolsdataopsphere
Script #46
sqlserver
Backupread-onlyMin Version: 2008

SQL Server Son Yedek Durumu ve RPO Kontrolü

Her veritabanı için son full, diferansiyel ve log yedek zamanlarını gösterir. Yedeksiz kalmış veya log yedeği alınmayan veritabanlarını hızla bulur.

#backup#msdb#rpo#compliance
sqlserver · sql
SELECT d.name AS database_name, d.recovery_model_desc,
       MAX(CASE WHEN b.type = 'D' THEN b.backup_finish_date END) AS last_full,
       MAX(CASE WHEN b.type = 'I' THEN b.backup_finish_date END) AS last_diff,
       MAX(CASE WHEN b.type = 'L' THEN b.backup_finish_date END) AS last_log,
       DATEDIFF(HOUR, MAX(CASE WHEN b.type = 'D' THEN b.backup_finish_date END), GETDATE()) AS hours_since_full
FROM sys.databases d
LEFT JOIN msdb.dbo.backupset b ON b.database_name = d.name
WHERE d.name <> 'tempdb'
GROUP BY d.name, d.recovery_model_desc
ORDER BY hours_since_full DESC;
Operasyonel Notlar & İyileştirme Aksiyonu

FULL recovery modelinde `last_log` boşsa log dosyası büyüyor olabilir.

Üretim Güvenliği & Çalıştırma Standartları
  • Bu script salt okunur (read-only) teşhis için tasarlanmıştır; doğrudan veri veya şema değişikliği yapmaz.
  • Ağır yük altındaki üretim sunucularında çalıştırmadan önce hedef veritabanı sürümünü (Min. Sürüm: 2008) doğrulayın.
  • İlişkili oturumu sonlandırma veya indeks silme gibi yazma etkili aksiyonlar için notlar bölümündeki komutları temkinli uygulayın.