Blog'a Dön SQL & Teknik

Logo Veritabanı Yedekleme ve Güvenlik

SQL Server Backup Stratejileri

24 Aralık 2025 12 dk okuma

⚠️ Kritik: Veri kaybı, bir işletme için felaket demektir. Düzenli ve test edilmiş yedekleme stratejisi hayati önem taşır.

Yedekleme Türleri

Full Backup

Tüm veritabanının tam kopyası

  • • En güvenli
  • • En fazla alan kullanır
  • • Haftalık önerilir

Differential Backup

Son full'dan sonraki değişiklikler

  • • Orta güvenlik
  • • Orta alan kullanımı
  • • Günlük önerilir

Transaction Log

İşlem logları

  • • Point-in-time recovery
  • • Az alan
  • • Saatlik önerilir

Önerilen Yedekleme Stratejisi

Zaman Yedek Türü Saklama Açıklama
Pazar 02:00 Full 4 hafta Haftalık tam yedek
Her gün 23:00 Differential 7 gün Günlük fark yedeği
Her saat Log 24 saat Transaction log backup

SQL Job: Otomatik Full Backup

-- Haftalık Full Backup Script

DECLARE @BackupPath NVARCHAR(500)
DECLARE @FileName NVARCHAR(500)
DECLARE @Date NVARCHAR(20)

SET @Date = REPLACE(REPLACE(REPLACE(
    CONVERT(NVARCHAR, GETDATE(), 120), '-', ''), ':', ''), ' ', '_')
SET @BackupPath = 'D:\Backup\'
SET @FileName = @BackupPath + 'LOGODATA_FULL_' + @Date + '.bak'

BACKUP DATABASE [LOGODATA]
TO DISK = @FileName
WITH
    COMPRESSION,
    CHECKSUM,
    STATS = 10,
    NAME = N'LOGODATA Full Backup'

-- Yedek doğrulama
RESTORE VERIFYONLY FROM DISK = @FileName

SQL Job: Differential Backup

-- Günlük Differential Backup Script

DECLARE @BackupPath NVARCHAR(500)
DECLARE @FileName NVARCHAR(500)
DECLARE @Date NVARCHAR(20)

SET @Date = REPLACE(REPLACE(REPLACE(
    CONVERT(NVARCHAR, GETDATE(), 120), '-', ''), ':', ''), ' ', '_')
SET @BackupPath = 'D:\Backup\'
SET @FileName = @BackupPath + 'LOGODATA_DIFF_' + @Date + '.bak'

BACKUP DATABASE [LOGODATA]
TO DISK = @FileName
WITH
    DIFFERENTIAL,
    COMPRESSION,
    CHECKSUM,
    STATS = 10

3-2-1 Yedekleme Kuralı

3
3 Kopya

Verinin en az 3 kopyası olmalı

2
2 Farklı Medya

Disk + NAS, veya Disk + Tape gibi

1
1 Offsite Kopya

Fiziksel olarak farklı lokasyonda (bulut dahil)

Güvenlik Ayarları

SA Hesabını Kapatın

Default SA hesabını devre dışı bırakın veya güçlü şifre ile koruyun.

ALTER LOGIN sa DISABLE

Minimum Yetki Prensibi

Logo kullanıcılarına sadece gerekli yetkiler verin. db_owner yerine özel roller oluşturun.

TDE (Transparent Data Encryption)

Disk seviyesinde şifreleme için TDE aktifleştirin.

Firewall Kuralları

SQL Server portunu (1433) sadece gerekli IP'lere açın.

Eski Yedekleri Temizleme

-- 30 günden eski yedekleri sil

DECLARE @CleanupDate DATETIME
SET @CleanupDate = DATEADD(DAY, -30, GETDATE())

EXECUTE master.dbo.xp_delete_file
    0, -- File type (0 = backup, 1 = log)
    N'D:\Backup\', -- Folder path
    N'bak', -- File extension
    @CleanupDate -- Older than date

Yedek Test Kontrol Listesi

  • Yedek dosyasının boyutunu kontrol edin (beklenenden küçükse sorun var)
  • RESTORE VERIFYONLY komutu ile doğrulayın
  • Ayda 1 test ortamına restore yapın
  • Offsite kopyaların erişilebilir olduğunu test edin
  • Job başarısız olursa e-posta bildirimi ayarlayın

Pro Tip

Yedek sadece test edilmiş yedektir. Test edilmemiş yedek, yedek sayılmaz. Her ay en az bir kez restore testi yapın.

Veritabanı Sağlık Kontrolü

Logo veritabanınızın yedekleme ve güvenlik durumunu ücretsiz kontrol edelim.

Ücretsiz Kontrol