T-SQL Kullanarak Tüm Veritabanlarının Yedeklerini Alma
1. Tüm Veritabanlarını Listeleme
İlk adım olarak, SQL Server'daki tüm veritabanlarını listelemeniz gerekmektedir. Bunun için aşağıdaki sorguyu kullanabilirsiniz:
SELECT name
FROM sys.databases
WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb')
Bu sorgu, master, tempdb, model ve msdb veritabanlarını hariç tutarak tüm kullanıcı veritabanlarını listeler.
2. Yedek Alma İşlemi
Şimdi, listedeki her bir veritabanı için yedek alma işlemini gerçekleştireceğiz. Aşağıdaki T-SQL komutu bu işlemi yapacaktır:
DECLARE @DBName NVARCHAR(255)
DECLARE @BackupPath NVARCHAR(500)
DECLARE @BackupFileName NVARCHAR(500)
DECLARE @SQL NVARCHAR(MAX)
SET @BackupPath = 'C:\Backup\' -- Yedeklerin saklanacağı dizini belirtin
DECLARE DBNameCursor CURSOR FOR
SELECT name FROM sys.databases
WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb')
OPEN DBNameCursor
FETCH NEXT FROM DBNameCursor INTO @DBName
WHILE @@FETCH_STATUS = 0
BEGIN
SET @BackupFileName = @BackupPath + @DBName + '_' + REPLACE(CONVERT(NVARCHAR(20), GETDATE(), 120), ':', '') + '.bak'
SET @SQL = 'BACKUP DATABASE ' + QUOTENAME(@DBName) + ' TO DISK = ''' + @BackupFileName + ''' WITH FORMAT'
EXEC(@SQL)
FETCH NEXT FROM DBNameCursor INTO @DBName
END
CLOSE DBNameCursor
DEALLOCATE DBNameCursor
3. Otomatik Yedekleme Planı Oluşturma
Tüm veritabanlarının düzenli olarak yedeklerini almak için bir otomatik yedekleme planı oluşturmak önemlidir. SQL Server Agent kullanarak bu işlemi yapabilirsiniz. Günlük, haftalık veya aylık olarak yedekleme planınızı yapılandırabilirsiniz.
4. Dikkat Edilmesi Gerekenler
Yedekleri saklayacağınız disk alanının yeterli olduğundan emin olun.
Yedekleme işlemlerinin yüksek trafik saatlerinde gerçekleşmediğinden ve sistem performansını etkilemediğinden emin olun.
Yedekleme işleminden önce veritabanı dosyalarınızın bütünlüğünü kontrol edin.
Bu adımları takip ederek, SQL Server'daki tüm veritabanlarının düzenli olarak yedeklerini alabilir ve veri kaybını en aza indirebilirsiniz.
Bu makale, SQL Server'daki tüm veritabanlarının yedeklerini almak için temel bir rehber sağlar. İhtiyaçlarınıza ve ortamınıza bağlı olarak, işlemleri özelleştirebilirsiniz.