Veri kaybını önlemek, sistem arızalarına karşı hazırlıklı olmak ve gerektiğinde eski veriye hızlıca dönebilmek için yedekleme işlemleri her veritabanı yöneticisi (DBA) için kritik bir öneme sahiptir. Bu yazıda, SQL Server üzerinde bir veritabanının nasıl yedekleneceğini (backup) ve bu yedeğin nasıl geri yükleneceğini (restore) adım adım öğreneceksiniz.
Yedekleme ve Script Almanın Farkı
İlk olarak şu farkı belirtmek gerekir:
SQL Server’da script almak, yalnızca veritabanının şema ve yapı bilgilerini (tablolar, stored procedure’ler vb.) dışa aktarmaktır. Ancak backup işlemi, veritabanının tüm yapısını ve içeriğini (MDF ve LDF dosyaları dahil) yedekler. Bu nedenle tam geri dönüş için backup işlemi tercih edilmelidir.
Adım Adım Yedek Alma (Backup)
SQL Server Management Studio’yu (SSMS) açın sunucuya bağlanın. Sol panelde yedeklemek istediğiniz veritabanına sağ tıklayın.
Tasks > Back Up… yolunu izleyin.
Yedekleme Türünü ve Lokasyonunu Belirleyin
Backup Type: Full seçilir (veritabanının tamamı yedeklenir).
Differential (önceki yedekten bu yana değişen veriler) ihtiyaca göre tercih edilebilir.
Destination (Hedef): Yedek dosyasının kaydedileceği yer belirlenir.
“Disk” seçilerek yerel diskte uygun bir klasöre göz atılır.
Dosya adı manuel olarak değiştirilebilir (örneğin: Veritabani_Yedek_2206.bak).
Gerçek sistemlerde yedekler genellikle başka bir sunucuda veya harici bir disk üzerinde tutulur. Aynı dizine alınan yedekler, sonraki gün üzerine yazılabilir; bu nedenle dosya adlarını tarihli tutmak faydalıdır.
Media Options (Medya Ayarları)
Daha önceki yedeğin üzerine yazmak istiyorsanız “Overwrite all existing backup sets” seçeneği işaretlenir.
İsteğe bağlı olarak yedeğin süresi, şifreleme ve sıkıştırma ayarları yapılabilir.
Compression ve Şifreleme
Compression (Sıkıştırma):
Yedek boyutunu düşürmek için Compress backup seçilebilir.
Encryption (Şifreleme):
SQL Server 2014 ve sonrası sürümlerde yedekler şifrelenebilir. Bu, güvenlik açısından önerilir.
Backup İşlemini Başlatın
Tüm ayarlar tamamlandıktan sonra “OK” butonuna tıklayarak yedekleme işlemini başlatın.
İşlem birkaç saniye içinde tamamlanır ve başarı mesajı görüntülenir.
Yedek Dosyasının Kontrolü
Yedekleme tamamlandıktan sonra belirtilen dizine giderek .bak uzantılı yedek dosyasının oluşturulup oluşturulmadığını kontrol edin. Örneğin:
Veritabani_Yedek_2206.bak boyutu yaklaşık 163 MB olabilir.
Veritabanının orijinal boyutuna bağlı olarak sıkıştırma etkisi farklılık gösterebilir.
Yedeği Geri Yükleme (Restore)
- Restore İşlemine Başlama
SSMS üzerinde Databases klasörüne sağ tıklayın, ardından Restore Database… seçeneğine tıklayın. - Backup Dosyasını Seçin
Source kısmından “Device” seçeneğini işaretleyin.
Daha önce oluşturduğunuz .bak dosyasını seçin.
Sistem dosyayı tanıyacak ve veritabanının adı ile birlikte dosya bilgilerini gösterecektir.
- Restore Settings (İsteğe Bağlı)
Veri tabanı adı değiştirilebilir. Örneğin, aynı yedeği Deneme1, Deneme2 gibi farklı isimlerle yükleyebilirsiniz.
Aynı yedeği birden fazla kez farklı veri tabanı olarak geri yükleyebilirsiniz.
Üzerine yazmak isterseniz “Overwrite existing database” seçeneğini işaretleyin.
- Verify ve Geri Yükle
Verify komutu ile yedeğin bozulup bozulmadığı kontrol edilir.
Ayarlar tamamlandıktan sonra OK butonuna tıklanarak geri yükleme işlemi başlatılır.
İşlem kısa sürede tamamlanır ve “Restore successful” mesajı görünür.
Sonuç ve Önemli Notlar
Aynı veritabanı üzerine yedek yüklemesi yapılacaksa dikkatli olunmalı, dosya isimleri veya lokasyonları çakışmamalıdır.
Delete Database seçeneğiyle veritabanı silinirken, eğer “Delete backup and restore history information for databases” seçeneği seçilirse yedek geçmişi de silinir.
Bu işlemle SQL Server’da bir veritabanının nasıl yedeklenip geri yüklenebileceğini tam olarak öğrenmiş oldunuz.
SQL Server’da düzenli yedek almak, sadece veri kaybına karşı değil; test, geliştirme ve geçiş senaryoları için de vazgeçilmez bir uygulamadır. Bu makaledeki adımları uygulayarak, veritabanlarınızı güvenli bir şekilde yedekleyebilir ve gerektiğinde geri yükleyebilirsiniz.
Yorum bırakın