SQL

SQL Express Üzerinde Otomatik Backup Schedule Etme

SQL Express sürümlerinde agent kullanılamadığı için direk maintenance task üzerinden SQL Backup schedule edemiyoruz bildiğiniz gibi. Eğer online SQL backup alabileceğiniz bir backup çözümünüz yok ise ; SQL query’inizi BAT dosyası üzerinden çalıştırıp istediğiniz lokasyona backup’larınızı çıkartabilir, bunu otomatize etmek için ise Windows Task Scheduler’ı kullanabilirsiniz.

1- Ilk olarak elinizde bulunması gereken şey; SQL üzerinde çalışarak backup’ları dışarı export edecek olan query’yi bulmak. Buraya tıklayarak daha önce blogumda paylaştığım scripti kullanabilirsiniz.

2- Backup ları otomatik olarak çıkartacağımız dizini belirleyelim. Ben bu örnekte backup’ları C:\Test path’i altına çıkartmak istiyorum. Yukarıdaki linke tıkladıktan sonra aldığınız query’i notepad’e yapıştırın ve backupdb.sql olarak backup lokasyonu olan C:\Test altına save as edin.

 

3- SQL scriptimizi çalıştıracak olan batch dosyasını oluşturmak için. Notepad üzerinde aşağıdaki komutu yapıştırın ve SQLCMD.exe dosyasının yolunu kullandığınız SQL versiyonuna göre düzenleyin. Save as “backup.bat” diyerek c:\Test altına kaydedin.

 

 

 

Nasıl düzenleyebilirim;

  • SQL versiyonlarına göre sqlcmd.exe dosyasının bulunduğu path listesini aşağıda görebilirsiniz.
  • .\VIM_SQLEXP olarak belirtilen kısım SQL Instance bilgisinin girileceği yer. Eger default instance ise direk “.” olarak bırakabilirsiniz.
  • C:\test\backupdb.sql ise daha önce hazırladığım SQL query’in yolu
SQL Versions Location
SQL 2008 R2 C:\Program Files\Microsoft SQL Server\100\Tools\Binn\
SQL 2012 C:\Program Files\Microsoft SQL Server\110\Tools\Binn\
SQL 2014 C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn\
SQL 2016 C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn\

4- Task Scheduler’ı açarak, yeni bir task create ederek bat dosyasını çalıştırmak istediğiniz aralığı triggers altında belirledikten sonra, Actions altında New\Start Program Seçerek Program/Script altındaki kısma BAT dosyasınızın yolunu ekleyerek kaydedin.

5- Belirlediğiniz zaman aralığında schedule ettiğiniz task execute ettiğinde BAT dosyası üzerindne ilgili SQL query çalışarak backup’ları belirttiğiniz dizine çıkartıyor olacak.

 

About the author

Faruk TERZIOGLU

Faruk TERZIOGLU - 2003 senesinden beri aktif olarak bilgi teknolojileri sektöründe çalıyor. Uzmanlık alanları BT altyapı çözümleri ve yazılım tanımlı veri merkezi teknolojileri, Microsoft ailesi ürünleri, Açık kaynak kodlu sanallaştırma platformları ve uygulamaları olup bulut teknolojileri öncelikli ilgilendiği alanlar arasındadır. 2018 yılında Alibaba Cloud tarafından Bulut Teknolojileri Çözümleri alanında MVP olarak ilan edilmiştir.

Leave a Comment