DBAtlas · Atlas de operaciones de bases de datos

Backup a URL (Azure Blob SAS / almacenamiento compatible con S3)

SQL ServerBackup y log

Comando

-- A) Azure Blob: SAS credential (named after the container URL, SECRET without a leading '?')
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-compatible storage (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;

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

Qué hace

Escribe el backup directamente en almacenamiento de objetos: en Azure Blob como block blobs con una credencial SAS, o en 2022 en almacenamiento compatible con la API de S3 (AWS S3, MinIO etc.) con una credencial de access key. La credencial se elige automáticamente por coincidencia con el prefijo de la URL.

Cuándo usarlo

Para requisitos de backup fuera del sitio, escenarios de migración a la nube/DR híbrido o cuando el almacenamiento local de backups es insuficiente.

Precaución

En Azure un único block blob admite como máximo 50,000 bloques; con un MAXTRANSFERSIZE de 4 MB eso son unos 195 GB por archivo, así que haga striping de las bases de datos grandes en varias URL. En S3 un archivo tiene como máximo 10,000 partes; para bases de datos grandes aumente MAXTRANSFERSIZE (hasta 20 MB, requiere COMPRESSION) y haga striping en varias URL (hasta 64). S3 no soporta INIT/append; FORMAT sobrescribe un backup existente con el mismo nombre. Cuando caduca la SAS, los jobs de backup fallan con error; anote la fecha de caducidad en el calendario. El secreto de la credencial se guarda en master; los principals con CONTROL SERVER pueden usarlo.

Abrir en DBAtlas →

Relacionado