MSSQL Server Maintenance Plans Backup

Bu makalede sql server üzerinde Maintenance Backup konusunu genel hatlarıyla ele almış olacağız.   Maintenance Plan sql server üzerinde bakım ve performans işlemlerimizi gerçekleştirdiğimiz bir yapı olarak karşımıza çıkmaktadır. Günümüzde tercih edilmese de bazı durumlarda tercih edilmektedir.

SSMS üzerinde Management sekmesi altında görebileceğimiz bir yapı olarak karşımıza çıkmaktadır.

Maintenance Plan oluştururken iki seçenek karşımıza çıkar.  Maintenance Plans kısmına sağ tıkladığımızda  New Maintenance Plan.. ve Maintenance Plan Wizard kısmı karşımıza çıkmaktadır. Bu iki seçenekle backup işlemini gerçekleştirebiliriz.

Maintenance Plan’ın çalışması için Sql Agent servisinin çalışması gerekmektedir. Çünkü her ne kadar Management sekmesi altında yapmış olsak da arka planda oluşturmuş olduğumuz Maintenance plan için  bir job oluşturuyor.

İkinci  seçenek olan Maintenance Plan Wizard  ile bir Maintenance Plans oluşturalım. Gelen ekranda aşağıdaki gibi Do not show this starting page again’i seçerek next diyoruz.

Not: Herhangi bir görev oluşturmadan(backup,istatistik vs..) yapılan tüm işlemler aynıdır.

Gelen ekranda Name kısmından Maintenance Plan’a bir isim veriyoruz. Sadece bir tane görev oluşturacağımız için Single schedule for the entire plan or no schedule seçeneğini seçiyoruz. Separate schedules for each task seçeneği ile birden fazla görev seçip sırasıyla scheduled ve ayarlamalar yapabiliriz. Kısacası bu seçenekle FULL-DIFF ve LOG backup ayarlayıp hepsi için ayrı bir zamanlayıcı verilebilir.

Scheduled kısmında Change.. butonuna basarak bir zamanlayıcı oluşturulur.

Gelen ekranda ihtiyaçlarınıza göre zamanlama belirtilir. Haftada 1 gün sadece Pazar gecesi 23.23.23 zaman diliminde çalışması için bir zamanlayıcı belirtiyoruz. Scheduled type Recurring ve Scheduled’ın aktif olması için checkboxs’ın Enable yapılması gerekmektedir. Daily frequency kısmında Occurs every kısmını seçmiş olsaydık haftada belirtilmiş gün içerisinde kaç defa çalışması gerektiğini ve zaman aralığını belirtebilirdik. 

Bu ayarlama yaptıktan sonra Ok denilip ekrandan çıkılır. Gelen ekranda Next denilip bir sonraki aşamaya geçilir.

Gelen ekranda sql server için hangi bakım onarım işlemini yapmak istiyorsak o seçilir. Bu görevler, SQL Server veritabanlarının performansını, bütünlüğünü ve düzenliliğini sağlamak için düzenli olarak yapılması gereken işlemleri içeriyor. Aşağıdaki resme kadar tüm işlemler maintenance plans için ortak olan işlemler olarak karşımıza çıkmaktadır.

Backup işlemini gerçekleştireceğimiz için alınacak olan Backup türü seçilir.

Back Up Database (Full): Veritabanının tam yedeğini alır. Bu işlem, veritabanının tüm içeriğini yedekler. 

Back Up Database (Differential): Full yedekten sonra yapılan değişikliklerin yedeğini alır. Bu, daha hızlı ve küçük yedeklemeler sağlar. 

Back Up Database (Transaction Log): Veritabanının yapılan her işlemini yedekler. Bu yedek, felaket anında veritabanını son anına kadar geri yüklemek için kullanılır.

System databases seçeneğini seçersek sistem veritabanları için backup işlemlerini gerçekleştirebilirsiniz.

Yukarıdaki seçimlerin herhangi birini yapabilirsiniz. Ben sadece uygulamalı bir şekilde full backup işlemini göstermek istediğim için ilgili checkbox’ı işaretliyorum. Next deyip bir sonraki aşamaya geçiyorum. Farklı olan kısım sadece hangi görevi yapmak istiyorsak ilgili görevi yapabiliriz.

Gelen ekranda bir değişiklik yapmadan Next deyip bir sonraki aşamaya geçiyorum. Aşağıdaki ekranda General bölümünde  database kısmında herhangi bir veritabanını seçebiliriz.

Databases kısmından Select one or more seçeneğine tıkladığımızda hemen altında gözüken pencere açılıyor.

All databases seçeneğini seçersek bütün veritabanlarının full backup işlemlerini gerçekleştirecektir.

System databases seçeneğini seçersek sistem veritabanlarının full backup işlemlerini gerçekleştirecektir.

All user databases seçeneğini seçersek bütün kullanıcı veritabanlarının full backup işlemlerini gerçekleştirecektir.

These databases seçeneği seçeneğini seçerek spesifik veritabanı seçimi yapabiliriz. Örneğin biz bu örneğimizde aşağıdaki gibi sadece AdventureWork2012 veritabanı için full backup işlemlerini yapacağız.

Ignore databases where the state is not online seçeneğini seçerseniz full backup işlemi sırasında veritabanı erişilemez durumda ise o veritabanını atlar ve işleme devam eder. Bu seçenek All databases seçeneği ve tüm databaseler için geçerlidir.

Destination kısmında ise klasörlerin nasıl oluşturulduğunu belirleyebiliriz. Seçmiş olduğumuz yol haritasına göre bu adımlar değişmektedir.

Options kısmında ise daha spesifik yetkiler verilebilir. Normal SSMS arayüzünde almış olduğumuz backup işlemi için gelen ekran önümüze gelmektedir. Backup makalelerinde aşağıdaki kısımların ne işe yaradığını görebiliriz.

Aşağıdaki tüm kısımlar tüm Maintenance Plans’lar için ortak olan işlemler.

Bir sonraki ekranda aşağıdaki gibi Write a report to a text file seçeneğini seçerseniz Folder location seçeneğinde belirlediğiniz klasörde yapılan işlemlerle ilgili log kayıtlarını tutacaktır.

E-mail report seçeneğini seçerek yapılan işlemlerle ilgili raporları To: kısmında belirlediğiniz mail adresine gönderecektir.

Başarılı bir şekilde işlemlerimizin gerçekleştiğini görmüş olduk. Bu işlemleri Log ve Diff backup içinde yapabiliriz.

Maintenance Plans sekmesi altında bir plan oluştuğunu ve sql agent altında ise bu plan’a bağlı bir job oluşmaktadır. 

Execute işlemini ilgili job üzerinden de yapabiliriz.

Oluşmuş olan job’ın içeriğine baktığımızda plan oluştururken oluşturmuş olduğumuz Schedule ve Step’in geldiğini görmüş oluyoruz.

Belirlemiş olduğumuz şekilde alt dizin oluşturarak Backup işlemini gerçekleştirmiş olduk.

İlgili maintenance plan sildiğimizde oluşmuş olan job’ımızda kaybolur.

Manuel bir şekilde bu işlemi gerçekleştirmek için  Maintenance Plans üzerine sağ tıklayıp New Maintenance Plans diyiyoruz. Bu şekilde Wizard ekranından bağımsız bir şekilde manuel oluşturabiliriz.

Name kısmından bir isim belirliyoruz.

OK dedikten sonra karşımıza bir boş ekran gelmektedir.

Toolbox bölümünün yanında bulunan ekran aşağıda görülmektedir.

Schedule bölümünden bir zamanlayıcı belirtilir.

Schedule bölümüne tıklanıp bir zamanlayıcı belirlenmektedir.

Zamanlama işlemini yaptıktan sonra OK dedikten sonra gelen ekranda yapmak istediğimiz işlemi çek bırak yöntemi ile gerçekleştiriyoruz. Toolbox bölümünde görevlerin ne olduğunu makalenin başında açıklamıştık.

Backup Up Database Task kutucuğuna çift tıklayıp konfigürasyonumu yapıyorum. Gelen ekran Maintenance Plan Wizard ekranının aynısı.

Yukarıdaki ilgili database’i seçtikten sonra Destination kısmında Backup’ı nereye almam gerektiğini ve uzantısının ne olması gerektiği işlemlerini belirtiyorum.

Options kısmında ise backup alırken nasıl konfigürasyon yaptığımızda aynı işlemleri yapıyoruz. İfadelerin ne olduğuyla ilgili backup makalelerinden öğrenebilirsiniz.

View T–SQL butonuna tıklayarak yapılan işlemlerin script’ini alıyoruz. İlgili komutu çalıştırıyoruz.

Senkronizasyon olduktan sonra  Task’ımız yeşil renge dönmüş oldu.

İlgili query’i kapatıp kaydediyoruz. Aşağıdaki resimde çarpı işareti olan yere tıklıyoruz.

Sql Server Agent altında ilgili job’ımızı görmekteyiz.

Maintenance plan’ı execute veya ilgili job’ı start ettiğimizde backup’ımız başarılı bir şekilde alınmış oldu.

Bu makalede Maintenance Plans Backup konusuna değinmeye çalıştık.

Başka bir makalede görüşmek dileğiyle.

“Şüphesiz, Rabbin sana verecek ve sen de hoşnut olacaksın.”. Duha Süresi-5 Ayet

Author: Yunus YÜCEL

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir