SQL Server

SQL Express Yedek Alma Rehberi (Otomatik)

SQL Express Yedek Alma (Scheduled Backup)

SQL Express yedek alma işlemi, özellikle küçük ve orta ölçekli işletmeler için kritik bir güvenlik önlemidir. Ancak ne yazık ki, SQL Server Express sürümünde SQL Agent özelliği yer almaz. Bu nedenle, zamanlanmış görevleri doğrudan oluşturamazsınız.

İyi haber şu: Bu sınırlamayı basit bir SQL scripti ve batch dosyası ile aşabilirsiniz. Bu rehberde, SQL Express otomatik yedekleme işlemini adım adım anlatıyorum. Ayrıca, yalnızca birkaç dakikada kurulum yaparak günlük yedekleme işlemlerini sorunsuz şekilde gerçekleştirebilirsiniz. Eski yedekler de otomatik olarak silinir. Kulağa harika geliyor, değil mi?

Neden SQL Server Express?

SQL Server Express, ücretsiz olması nedeniyle küçük işletmelerde sıkça tercih edilen bir veritabanı yönetim sistemidir. Elbette bazı sınırlamaları vardır. Örneğin, veri boyutu limiti ve SQL Agent eksikliği gibi.

Yine de birçok uygulama için yeterlidir. Peki zamanlanmış yedekleme nasıl yapılır? Hemen açıklayalım.

Adım Adım SQL Express Yedekleme Kurulumu

Gerekli Dosyalar

İhtiyacımız olan yalnızca iki dosya:

  • backup.sql – Veritabanı yedeğini alan SQL scripti.

  • SQLBackup.cmd – SQL scriptini çalıştıran batch dosyası.

Aşama 1 : backup.sql Dosyasını Oluşturun

Aşağıdaki kodları bir dosyaya yapıştırın ve backup.sql olarak kaydedin:

DECLARE @path varchar(100)
DECLARE @day int
DECLARE @date varchar(30)
DECLARE @cmd varchar(250)
DECLARE @DeleteDate datetime

-- PARAMETRELER --
SET @path = 'D:\SQL-BACKUP\' -- Yedeklerin kaydedileceği klasör
SET @day = 5 -- Kaç günlük yedek saklanacak?
-- PARAMETRELER --

-- Tarihi dosya adına uygun hale getir
SET @date = CONVERT(varchar(16), GETDATE(), 120)
SELECT @date = REPLACE(@date, ':', '')
SELECT @date = REPLACE(@date, ' ', '')
SELECT @date = REPLACE(@date, '-', '')

-- Tüm veritabanlarını sırayla yedekle
SET @cmd = 'IF DB_ID(''?'')<>2 BACKUP DATABASE [?] TO DISK = ''' + @path + '?_backup_' + @date + '.bak'' WITH INIT'
EXEC sp_msforeachdb @cmd

-- Eski yedekleri sil
SET @DeleteDate = DATEADD(day, -@day, GETDATE())
EXECUTE master.sys.xp_delete_file 0, @path, N'bak', @DeleteDate, 0
GO

Aşama 2: SQLBackup.cmd Dosyasını Oluşturun

Bir metin dosyası açın ve aşağıdaki satırları yazıp SQLBackup.cmd olarak kaydedin:

cd %windir%
SQLCMD -S .\SQLEXPRESS -U sa -P ŞİFRENİZ -i backup.sql -o D:\SQL-BACKUP\SQL_BKP_LOG_%date%.log

Aşama 3: Görevi Zamanlayın (Task Scheduler)

  1. Görev Zamanlayıcı (Task Scheduler) uygulamasını açın.

  2. Yeni bir görev oluşturun.

  3. Tetikleyici olarak günlük bir zaman belirleyin (örneğin her gece 23:00).

  4. Eylem (Action) kısmında SQLBackup.cmd dosyasını seçin.

Yapmamız gerekenler bu kadar kolay!

Bu yöntemi uyguladığınızda, SQL Express veritabanlarınızı her gün düzenli olarak yedeklersiniz. Dahası, eski yedekler otomatik olarak silinir. Böylece hem veri güvenliğini sağlarsınız hem de disk alanınızı verimli kullanırsınız.

Sonuç olarak, birkaç dosya ve bir zamanlayıcı ile manuel işlem yapmadan yedekleme sürecini tamamen otomatikleştirebilirsiniz. Bu da sistem yöneticileri için büyük bir zaman tasarrufu sağlar.

Sorularınız varsa yorum yapmaktan çekinmeyin.
 Yazıyı faydalı bulduysanız paylaşarak başkalarının da yararlanmasını sağlayabilirsiniz. İyi çalışmalar dilerim.

Tolga CEYHAN

Tolga CEYHAN, bilgi teknolojilerini severek takip eder ve BT üzerine hali hazırda aktif olarak çalışmaktadır. 2006 yılından 2017 yılına kadar web tasarım yazılım üzerine çalışmalar yaptım. Şuan ise Windows Sistem ve Sistem Güvenliği alanında çalışmalarımı sürdürmekteyim.

Recent Posts

PowerShell Komutları (Profesyonel Rehber)

Birçok kişi PowerShell komutları konusuna yalnızca “hangi komut ne işe yarar?” düzeyinde yaklaşır. Oysa profesyonel…

1 ay ago

Windows File Server Migration Rehberi (Adım Adım Veri Taşıma)

Kurumsal IT altyapılarında zamanla depolama ihtiyaçlarının artması, eski sunucuların performansının yetersiz kalması veya yeni mimariye…

1 ay ago

NTFS Permission Tasarımı ve AGDLP Modeli Rehberi

NTFS Permission Tasarımı: AGDLP Modeli ile Kurumsal Yetkilendirme Rehberi Kurumsal ortamlarda NTFS permission tasarımı, dosya…

1 ay ago

Windows File Server Güvenliği Rehberi

Kurumsal yapılarda Windows File Server güvenliği, veri bütünlüğü ve iş sürekliliği açısından kritik öneme sahiptir.…

1 ay ago

Blockchain Mantığı ile PowerShell Log Bütünlüğü

Blockchain Log Bütünlüğü Bu yazımızda blockchain log bütünlüğü üzerine incelemelerde bulunacağız. Günümüz kurumsal sistemlerinde en…

2 ay ago

PowerShell SQL Backup Script – Automated Full Database Backup

A PowerShell SQL Server backup script is a practical way to standardize SQL backups across…

3 ay ago

This website uses cookies.

Read More