Instance üzerindeki tüm veritabanlarının backup’ını almak
Normalde backup alma işlemleri için Ola Hallengren’in script’lerini kullanmanızda fayda var. Ama bazen normal backup senaryosu dışında instance üzerindeki tüm veritabanlarının backup’ını ayrı bir yere almanız gerekebilir.
Aşağıdaki script yardımıyla Instance üzerindeki tempdb hariç tüm veritabanlarının backup’ını alabilirsiniz.
SET @path = ‘C:\Backup’ ‘taki C:\Backup yazan yere de hangi path’e backup almak istiyorsanız o path’i yazmalısınız.
DECLARE @name VARCHAR(50) -- veritabanı ismi DECLARE @path VARCHAR(256) -- backup dosyaları için path DECLARE @fileName VARCHAR(256) -- backup için file ismi DECLARE @fileDate VARCHAR(20) --backup dosyasına eklenecek tarih -- specify database backup directory SET @path = 'C:\Backup' -- specify filename format SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) DECLARE db_cursor CURSOR FOR SELECT name FROM master.dbo.sysdatabases WHERE name NOT IN ('tempdb') -- exclude these databases 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 WITH COPY_ONLY FETCH NEXT FROM db_cursor INTO @name END CLOSE db_cursor DEALLOCATE db_cursor