SQL Server, farklı bir çok yedekleme methodu sunmuştur.
A- Full Database Backup Yapma
Eğer veritabanı read-only ise, full database backups veri kaybını önlemek için yeterli olabilir. Full database backups alındığı zaman SQL Server:
1- Aktiviteleri yedekler.
2- Transaction log’daki onaylanmamış
transactionları yedekler.
Örnek: Aşağıdaki örnek; mantıksal ismi nwndbac olan permanent backup files’ı yaratır ve full database backups’ı icra eder.
USE master
EXEC sp_addumpdevice ‘disk’, ‘nwndbac’, ‘C:\MyBackupdir\Nwndbac.bak’
BACKUP DATABASE northwind TO nwndbac
Örnek: Aşağıdaki örnek; nwndbac dosyasına full database backups’ı yapar ve dosya üzerinde bulunan önceki yedeklerin üzerine yazar.
BACKUP DATABASE northwind TO nwndbac WITH INIT
Örnek: Aşağıdaki örnek; temporary backup disk file yaratır ve bu dosyaya full database backup işler.
BACKUP DATABASE northwind TO
DISK = ‘D:\Temp\Mytempbackup.bak’
B- Differantial Backup Yapma
Değişmiş veritabanının yedeğini açmak için gerekli olan zamanı, minimize etmek için differantial backup yapılmalı. Bu full database backup yapılmışsa kullanılabilir. Differantial backup’ta SQL Server:
1- Son full database backup’tan beri değiştirilen veritabanı veritabanı
bölümlerini yedekler.
2- Differantial backup sırasında yer tutan aktiviteyi yedekler.
Differantial backup yapılırken aşağıdaki adımlar göz önüne alınmalı:
1- Son full database backup’tan beri belirli bir row farklı zamanlarda değiştirilmişse, Differantial backup row’un sadece son değerini içerir. Bu, row hakkındaki tüm değişiklikleri içeren transaction log’dan farklıdır.
2- Yedekleme zamanı minimize edilebilir; çünkü yedek setleri, full backups’dakilerden daha küçüktür ve transaction log’ların işlenme zorunluluğu yoktur.
Syntax BACKUP DATABASE {database_name @database_name_var}
TO
[WITH
[[,]DIFFERENTIAL]
]
Örnek: Aşağıdaki örnek; temporary backup file üzerinde differantial backup yaratır.
BACKUP DATABASE northwind TO
DISK='D:\Mydata\Mydiffbackup.bak'
WITH DIFFERENTIAL
C- Transaction Log Yedeği Yapma
Veritabanı değişikliklerini kaydetmek için transaction loglar yedeklenir. Transaction loglar, full database backup yapılırken yedeklenirler:
1- En azından bir kere full database backup yapmadıkça, transaction log’un yedeği alınmaz.
2- Uygun veritabanı yedeği olmadan transaction loglar’ın yedekleri açılamaz.
Hiç yorum yok:
Yorum Gönder