Sql Server Tüm Databaselerin Yedeğini Alma

Mssql Express Kullanıyorsanız Otomatik Yedek Özelliği olmadığı için kendiniz elle çözümler üretmeniz gerekebiliyor.Aslında otomatik yedek alan 3. parti yazılımlar var piyasada fakat ben hiçbirini sağlıklı bir şekilde çalıştıramadım.Mecburen elle yedek almam gerektiği için aşağıdaki kodu buldum.Aşağıdaki kod tüm db lerin yedeğini istediğiniz klasöre alıcaktır.

DECLARE @name VARCHAR(50) -- database adı  
DECLARE @path VARCHAR(256) -- backup dosyaları için dizin
DECLARE @fileName VARCHAR(256) -- dosya adı  
DECLARE @fileDate VARCHAR(20) -- dosya adındaki tarih

SET @path = 'C:\DbBackUp\'  

SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) 

DECLARE db_cursor CURSOR FOR  
SELECT name 
FROM master.dbo.sysdatabases 
WHERE name NOT IN ('master','model','msdb','tempdb')  

OPEN db_cursor   
FETCH NEXT FROM db_cursor INTO @name   

WHILE @@FETCH_STATUS = 0   
BEGIN   
       SET @fileName = @path + @name + '_' + @fileDate + '.BAK'  
       BACKUP DATABASE @name TO DISK = @fileName  

       FETCH NEXT FROM db_cursor INTO @name  
END  

CLOSE db_cursor   
DEALLOCATE db_cursor

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s