Поделиться через


managed_backup.sp_backup_on_demand (Transact-SQL)

Область применения: SQL Server 2016 (13.x) и более поздних версий

Запрашивает управляемую резервную копию SQL Server в Microsoft Azure, чтобы выполнить резервную копию указанной базы данных.

Используйте эту хранимую процедуру для выполнения нерегламентированных резервных копий для базы данных, настроенной с помощью управляемого резервного копирования SQL Server в Microsoft Azure. Это предотвращает разрыв в цепочке резервного копирования и управляемое резервное копирование SQL Server в процессы Microsoft Azure, и резервное копирование хранится в одном контейнере хранилища BLOB-объектов Azure.

После успешного завершения резервной копии возвращается полный путь к файлу резервного копирования. В него включено имя и местоположение нового файла резервной копии, созданного в операции резервного копирования.

Ошибка возвращается, если управляемое резервное копирование SQL Server в Microsoft Azure находится в процессе выполнения резервной копии заданного типа для указанной базы данных. В этом случае возвращаемое сообщение об ошибке включает полный путь к файлу резервной копии, по которому будет загружена текущая резервная копия.

Соглашения о синтаксисе Transact-SQL

Синтаксис

EXEC managed_backup.sp_backup_on_demand
    [ @database_name = ] 'database name'
    , [ @type = ] { 'Database' | 'Log' }
[ ; ]

Аргументы

[ @database_name = ] 'имя базы данных'

Имя базы данных, для которой будет выполняться резервное копирование. Имя @database_name sysname.

[ @type = ] { 'Database' | 'Log' }

Тип резервного копирования: база данных или журнал. Параметр @type — nvarchar(32).

Значения кода возврата

0 (успешно) или 1 (сбой).

Разрешения

Требуется членство в роли базы данных db_backupoperator с разрешениями ALTER ANY CREDENTIAL и РАЗРЕШЕНИЯ EXECUTE для sp_delete_backuphistory хранимой процедуры.

Примеры

В следующем примере выполняется запрос резервного копирования базы данных для базы данных TestDB. Эта база данных имеет управляемое резервное копирование SQL Server в Microsoft Azure.

USE msdb;
GO

EXEC managed_backup.sp_backup_on_demand
    @database_name = 'TestDB',
    @type = 'Database';
GO