DBAtlas · Veritabanı operasyon atlası

URL'ye yedek al (Azure Blob SAS / S3 uyumlu depolama)

SQL ServerYedek & Log

Komut

-- A) Azure Blob: SAS credential (adi container URL'si, SECRET basinda '?' olmadan)
CREATE CREDENTIAL [https://dbabackup.blob.core.windows.net/sql]
WITH IDENTITY = N'SHARED ACCESS SIGNATURE',
     SECRET   = N'sv=2022-11-02&ss=b&srt=co&sp=rwdlac&se=2027-01-01T00:00:00Z&sig=XXXX';

BACKUP DATABASE [Musteri]
TO URL = N'https://dbabackup.blob.core.windows.net/sql/Musteri_full_1.bak',
   URL = N'https://dbabackup.blob.core.windows.net/sql/Musteri_full_2.bak'
WITH COMPRESSION, CHECKSUM, MAXTRANSFERSIZE = 4194304, BLOCKSIZE = 65536, STATS = 10;

-- B) S3 uyumlu depolama (2022+):
CREATE CREDENTIAL [s3://s3.eu-central-1.amazonaws.com/dba-backup/sql]
WITH IDENTITY = N'S3 Access Key',
     SECRET   = N'<AccessKeyID>:<SecretKeyID>';

BACKUP DATABASE [Musteri]
TO URL = N's3://s3.eu-central-1.amazonaws.com/dba-backup/sql/Musteri_full.bak'
WITH COMPRESSION, CHECKSUM, FORMAT, STATS = 10;

-- Dogrula (ayni credential kullanilir):
RESTORE VERIFYONLY
FROM URL = N's3://s3.eu-central-1.amazonaws.com/dba-backup/sql/Musteri_full.bak'
WITH CHECKSUM;

Ne yapar?

Yedeği doğrudan nesne depolamaya yazar: Azure Blob'a SAS credential ile block blob olarak, 2022'de S3 API uyumlu depolamaya (AWS S3, MinIO vb.) access key credential ile. Credential URL ön ekiyle eşleştirilerek otomatik seçilir.

Ne zaman kullanılır?

Off-site yedek gereksiniminde, buluta taşıma/hibrit DR senaryolarında, yerel yedek diski yetmediğinde.

Dikkat

Azure'da tek block blob en fazla 50.000 blok alır; 4 MB MAXTRANSFERSIZE ile dosya başına yaklaşık 195 GB sınırı vardır, büyük DB'yi birden çok URL'ye böl. S3'te dosya başına en fazla 10.000 part vardır; büyük DB için MAXTRANSFERSIZE'ı (en fazla 20 MB, COMPRESSION ile) artır ve birden çok URL (en fazla 64) kullan. S3'te INIT/append desteklenmez; FORMAT aynı adlı mevcut yedeğin üzerine yazar. SAS süresi dolarsa yedek job'ları sessizce değil hata ile düşer; son kullanma tarihini takvime koy. Credential secret'ı master'da saklanır; CONTROL SERVER yetkilileri credential'ı kullanabilir.

DBAtlas'ta aç →

İlgili