SQL Server veritabanlarının düzenli yedeklenmesi, veri güvenliğini sağlamak ve olası veri kayıplarını önlemek için kritik bir süreçtir. AWS S3, ölçeklenebilir ve güvenli bir bulut depolama hizmeti sunarak veritabanı yedekleme işlemleri için ideal bir çözüm sunar. Bu makalede, SQL Server veritabanlarını AWS S3 üzerine yedeklemek için izlenmesi gereken adımları detaylı bir şekilde ele alacağız.
1. AWS S3 İçin Credential Oluşturma
SQL Server'ın AWS S3 ile entegre çalışabilmesi için gerekli kimlik bilgilerini (credential) oluşturmak gereklidir.
AWS S3 Bucket Bilgileri
Aşağıdaki SQL komutunu kullanarak bir credential oluşturabilirsiniz:
CREATE CREDENTIAL [!Bucket!.s3.!Region!.amazonaws.com/!BucketName!]
WITH
IDENTITY = 'S3 Access Key',
SECRET = 'AccessKey:SecretAccessKey';
Bu credential, SQL Server'da yedekleme işlemleri sırasında kimlik doğrulama için kullanılacaktır.
2. AWS CLI Kurulumu
SQL Server yedeklerini AWS S3 üzerine göndermek için AWS CLI'nin sunucuya yüklenmesi gerekmektedir. AWS CLI yükleme yolu aşağıdaki gibi olmalıdır:
C:\Program Files\Amazon\AWSCLIV2\
Kurulum tamamlandıktan sonra AWS CLI’ın başarıyla yüklendiğini doğrulamak için aşağıdaki komut çalıştırılabilir:
aws --version
3. SQL Server'dan Backup Alma
SQL Server veritabanının AWS S3'e doğrudan yedeklenmesi için aşağıdaki BACKUP DATABASE komutu kullanılabilir:
BACKUP DATABASE TEST
TO URL = ' Credentialİsmi /TEST.bak'
WITH COPY_ONLY, FORMAT, STATS = 10, CREDENTIAL = ' Credentialİsmi;
Bu işlem, TEST veritabanını AWS S3 bucket'ına .bak formatında yedekleyecektir.
4. PowerShell Scripti ile AWS S3'e Yedek Taşıma
AWS S3 üzerinde yedekleme işlemlerini otomatikleştirmek için bir PowerShell scripti oluşturulmalıdır. Bu script, belirli bir dizindeki yedekleri AWS S3'e senkronize eder.
$env:Path += ';C:\Program Files\Amazon\AWSCLIV2\'
aws s3 sync B:\MSSQL\BACKUP [!Bucket!.s3.!Region!.amazonaws.com/!BucketName!] --delete > B:\MSSQL\sync\Glog.txt