Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
799
Tıklama
0
Öne Çıkarma
Bat Dosyası ile SQL Server Veritabanları Yedekleme İşlemi
O
3 yıl
Çavuş
Konu Sahibi

Veritabanı ile çalışmanın en zorlu kısımlarından birisi de şüphesiz ki yedekleme işlemidir. Bu bölümde veritabanlarını tek tek değil de bütün bir şekilde topluca yedekleme işlemi yapacağız.
Öncelik olarak yedeklemeye dahil olacak olan veritabanlarının ekran görüntüsünü paylaşalım.

Veritabanları
< Resime gitmek için tıklayın >


Sonrasında tüm veritabanlarını yedekleyeceğimizi bildirmiştik. Bu noktada ufak bir yedekleme sql scripti yazalım

SQL Yedekleme Scripti
DECLARE @DosyaAdi VARCHAR(50)
DECLARE @Patika VARCHAR(256)
DECLARE @DosyaAdiYeni VARCHAR(256)
DECLARE @DosyaAdiEk VARCHAR(20)
SET @Patika = 'D:\yedekler\'
SELECT @DosyaAdiEk = CONVERT(VARCHAR(20), GETDATE(), 120);
SET @DosyaAdiEk = REPLACE(@DosyaAdiEk, ' ','-')
SET @DosyaAdiEk = REPLACE(@DosyaAdiEk, ':','')
DECLARE dbCursor CURSOR READ_ONLY FOR
SELECT name FROM master.sys.databases WHERE name NOT IN ('master', 'model', 'msdb', 'tempdb') AND state = 0 AND is_in_standby = 0
OPEN dbCursor
FETCH NEXT FROM dbCursor
INTO @DosyaAdi
WHILE @@FETCH_STATUS = 0
BEGIN
  SET @DosyaAdiYeni = @Patika + @DosyaAdi + '_' + @DosyaAdiEk + '.bak'
  BACKUP DATABASE @DosyaAdi TO DISK = @DosyaAdiYeni;
  FETCH NEXT FROM dbCursor
  INTO @DosyaAdi
END
CLOSE dbCursor
DEALLOCATE dbCursor

Not: Script içerisinde SET @Patika = 'D:yedekler' şeklinde nereye yedekleneceğini belirttik. Sizler onu kendi değerlerinize göre düzenleyebilirsiniz.
SQL Server Management Studio üzerinde bu scripti çalıştıralım.

Scripti Çalıştıralım
< Resime gitmek için tıklayın >


Yedekleme sonuçlarını alt kısımda bize bildirmiş oldu. Yedekleme klasörünü kontrol edelim.

Yedeklenen Veritabanları
< Resime gitmek için tıklayın >


Buraya kadar her şey iyi gitti. Sıra geldi bat dosyası ile bu scripti "SQL Server Management Studio" tarzı bir arayüze girmeden yapmaya çalışalım.
Ben sql scripti ve bat dosyasını masaüstünde çalıştıracağım için patikalar masaüstü olacak şekilde ayarlı. Bat dosyası ve sql scriptinin masaüstündeki ekran görüntülerini paylaşalım.

Bat ve SQL Dosyası
< Resime gitmek için tıklayın >

Bat dosyasının içeriğini kontrol edelim.

Bat Dosya İçeriği
< Resime gitmek için tıklayın >


İşaretli olan kısımları SQL Server bilgilerine ve yedekleme scriptinin patikasına göre dolduralım. Daha sonra bat dosyasını çalıştıralım.

Bat Dosyasını Çalıştıralım
< Resime gitmek için tıklayın >


Bat dosyasının çalışması sonrasında yedekleme klasörümüzü kontrol edelim. Yedekler oluştu mu diye.

Bat Çalışma Sonrası Yedekler
< Resime gitmek için tıklayın >

Örnek olması açısından dosyaları indirip kendi bilgilerinize göre yedekleme işlemlerini yapabilirsiniz.

Script üzerinde biraz daha detaylı çalışılarak otomatik yedekleme işlemleri yapılabilir. Mesela bat dosyasını windows zamanlanmış görevlerde çalıştırabilirsiniz. Böylece istediğniz zaman otomatik yedekleme işlemleri başlamış olacaktır.


Kaynak: https://www.ontedi.com/sql/bat-dosyasi-ile-sql-server-veritabanlari-yedekleme-islemi