DBAtlas · Атлас эксплуатации баз данных

Резервное копирование по URL (Azure Blob SAS / S3-совместимое хранилище)

SQL ServerБэкап и журнал

Команда

-- 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;

Что делает

Записывает резервную копию прямо в объектное хранилище: в Azure Blob в виде блочных BLOB-объектов с учётными данными SAS или, в 2022, в S3 API-совместимое хранилище (AWS S3, MinIO и т. п.) с учётными данными ключа доступа. Учётные данные выбираются автоматически по совпадению префикса URL.

Когда использовать

Для требований внеплощадочного хранения копий, сценариев миграции в облако/гибридного DR или когда локального хранилища для резервных копий недостаточно.

Внимание

В Azure один блочный BLOB-объект вмещает не более 50,000 блоков; при MAXTRANSFERSIZE 4 MB это примерно 195 GB на файл, поэтому большие базы распределяйте по нескольким URL. В S3 у файла не более 10,000 частей; для больших баз увеличьте MAXTRANSFERSIZE (до 20 MB, требуется COMPRESSION) и распределите по нескольким URL (до 64). S3 не поддерживает INIT/дозапись; FORMAT перезаписывает существующую копию с тем же именем. Когда SAS истекает, задания резервного копирования падают с ошибкой; занесите дату окончания в календарь. Секрет учётных данных хранится в master; его могут использовать участники с CONTROL SERVER.

Открыть в DBAtlas →

Связанные материалы