DEFINITIONS

Definitions More Info.
Definition ID542
TitleSQL
CategoryNOTES
DefinitionBackup Types
Definition Descriptionhttp://yazilimdevi.com/yazilimdevi/Makaleler-712-sql-server-backup-types.aspx
Sql Server Backup Types Bu yazımda Sql Server ile alabileceğiniz yedekleme türleri hakkında konuşacağız.
Sql Server ile yedekleme mekanizması oluşturacağınız zaman doğru yedekleme türünü veya türlerini tercih etmelisiniz.
Aksi takdirde disk,zaman,performans,yönetim,veri kaybı gibi sorunlar ortaya çıkacaktır.
Her yedekleme türünün kendine göre avantajları ve dezavantajları vardır.
Önemli olan size en uygun olan yedekleme türünün tercih edilmesidir.
Şimdi yedekleme tiplerini konuşmaya başlayalım isterseniz.

1- Full Backup Tüm veritabanının yedeğinin alınmasıdır. Yedeğin alındığı zamana restore işlemi için başka herhangi bir yedekleme türüne ihtiyaç yoktur. Elinizde full backup varsa sistemi ayağı kaldırabilirsiniz. Ayrıca diğer yedekleme türleri için başlangıç(base) kabul edilir. Full Backup sistemi online modda çalışır. Yani yedek alınırken aynı anda diğer transactionlar çalışabilir. örnek:
BACKUP DATABASE Northwind TO DISK='C:\Yedeklerim\NorthwindFullBackup.bak'

2- Differential Backup Son Full Backup’tan sonra yapılan değişikliklerin tutulduğu yedekleme türüdür. Restore işlemi için son Full Backup’a ve kendisine ihtiyaç vardır. Bu yedekleme türünün çalışma mantığını anlamak önemlidir. Bildiğiniz üzere veriler “extent” ismini verdiğimiz ve içerisinde sekiz adet veri sayfası barındıran bölümlerde tutulurlar. Bu extentlerden herhangi birinde değişiklik olduğu zaman bir adet işaret bırakılır ki differential backup alındığında bu extentlerin yedeği alınsın. Doğal olarak bu yedekleme türünde veri bazlı değil “extent” bazlı bir yedekleme söz konusudur. Bu da şunu gösteriyor ki indexleme mekanizmasının performanslı olması bu yedekleme türünü de o yönde etkileyecektir.
Örnek:
BACKUP DATABASE Northwind TO DISK='C:\Yedeklerim\NorthwindDiffBackup.bak' WITH DIFFERENTIAL

3- Partial Backup İlginç bir yedekleme türüdür. Fakat çok yararlı olabilir. Read-Only filegroup’ları devreden çıkarma amaçlı tasarlanmıştır.
Örneğin raporlama amaçlı, sadece veri okumak için kullandığınız bir filegroup var ise bunun yedeğini almamak için partial backup türünden yararlanabilirsiniz. Fakat isterseniz read-only olan filegroup’ları da ekleyebilirsiniz. Read-Only olan veritabanlarının partial backup’ını aldığınız zaman sadece “Primary” filegroup yedeği alınır. Sql Server Management Studio veya Maintenance Plan Wizard arayüzleri tarafından desteklenmezler. T-SQL ile bu yedeği alabilirsiniz.
örnek:
BACKUP DATABASE Northwind READ_WRITE_FILEGROUPS TO DISK='C:\Yedeklerim\NorthwindPartial.bak'

Şimdi aşağıdaki sonuca dikkatinizi çekmek istiyorum. Daha önce aldığım Full Backup ile Şimdi Aldığım Partial Backup arasında bir fark olmadı. Bunun nedeni Northwind veritabanımda “Read-Only” filegroup olmamasıdır. Doğal olarak “Full Backup” gibi çalıştı.

4- Differential Partial Backup Son alınan Full ya da Partial Backup’dan sonra, Read-Only olmayan filegrouplardaki “extentlerde” yapılan değişikliklerin tutulduğu yedekleme türüdür. Yine restore işlemi için kendinden önce alınan Partial veya Full Backup’a ihtiyaç vardır.
örnek:
BACKUP DATABASE Northwind READ_WRITE_FILEGROUPS TO DISK='C:\Yedeklerim\NorthwindDiffPartial.bak' WITH DIFFERENTIAL
5- File and Filegroup Backups Sadece File ya da Filegroup bazlı bir yedekleme sistemidir. Çok fazla dosyanın veya dosya grubunun olduğu sistemlerde tercih edilmelidir. Tabii doğru ve performanslı bir yedekleme sistemi için veri tabanının çok iyi düzeyde tasarlanmış olması gerekir. Yer ve hız konusunda performans sağlanmış olur fakat Restore durumunda veritabanındaki tüm dosyaların yedeğinin elinizde bulunması gerekir. Full,Bulk Logged ve ReadOnly olan veritabanlarında kullanılabilir.

Örnek:
BACKUP DATABASE Northwind FILEGROUP ='PRIMARY' TO DISK='C:\Yedeklerim\NorthwindPrimaryFG.bak' Ben bu işlemi ilk yaptığım zaman hata aldım. Bunun nedeni “Northwind” vertabanının “Simple Recovery Modele" sahip olmasıdır. Nortwind Veritabanını Full Recover Modele çekip tekrar deniyorum. Artık başarılı.

6- File and Filegroup Differential Backups Daha önce alınan File veya Filegroup yedeklerinden sonra ilgili ”extentlerde” yapılan değişikliklerin yedeklenmesidir. Diğer differential yedekleme sistemleriyle aynı özelliklere sahiptir.
Örnek: BACKUP DATABASE Northwind FILEGROUP ='PRIMARY' TO DISK='C:\Yedeklerim\NorthwindDiffPrimaryFG.bak' WITH DIFFERENTIAL

7- Copy Only Backups Sql Server’da alınan her yedek veri tabanı için çok önemlidir. Mesela bir full backup aldığınız zaman bu durumu küçümsemeyin. Artık Sql Server için bir milat başlamış olur. Örneğin ardından differential backup alacağınız zaman sizin aldığınız full backuptan sonraki farklılıkları alır. Doğal olarak restore durumunda daha önce aldığınız değil son aldığınız full backup’a ihtiyaç vardır. Kısacası bir zincir oluşur. Siz bazı durumlarda belirli amaçlarla yedekler alıp bu yedeğin zincire dahil edilmesini istemeyebilirsiniz. İşte Copy Only Backup tam da bunu yapar. Alınan yedek zincire dahil edilmez. Sql Server görmezden gelir :)

Örnek: BACKUP DATABASE Northwind TO DISK='C:\Yedeklerim\NorthwindCopyOnly.bak' WITH COPY_ONLY

8- Transaction Log Backups En önemli backup türlerinden biridir. Önemi özellikle boyutlarının küçük olmasıyla ortaya çıkar. Kendinden önceki Full, Differential ya da Transaction Log Backup sonrasında yapılan transactionların yedeklenmesidir.
RecordBycunay
Record Date25-06-2014 23:28:28
Düzenle
Kopyala
Sil