managed_backup.sp_backup_config_basic (Transact-SQL)

Aplica-se a: SQL Server 2016 (13.x) e versões posteriores

Define as configurações básicas do Backup Gerenciado do SQL Server para o Microsoft Azure para um banco de dados específico ou para uma instância do SQL Server.

Observação

Esse procedimento pode ser chamado por conta própria para criar uma configuração básica de backup gerenciado. No entanto, se você planeja adicionar recursos avançados ou uma agenda personalizada, defina essas configurações usando managed_backup.sp_backup_config_advanced e managed_backup.sp_backup_config_schedule antes de habilitar o backup gerenciado com este procedimento.

Convenções de sintaxe de Transact-SQL

Sintaxe

EXEC managed_backup.sp_backup_config_basic
    [ @enable_backup = ] { 0 | 1 }
    , [ @database_name = ] 'database_name'
    , [ @container_url = ] 'Azure_Storage_blob_container'
    , [ @retention_days = ] retention_period_in_days
    , [ @credential_name = ] 'sql_credential_name'
[ ; ]

Argumentos

@enable_backup [ = ] { 0 | 1 }

Habilite ou desabilite o Backup Gerenciado do SQL Server no Microsoft Azure para o banco de dados especificado. @enable_backup é pouco.

Parâmetro necessário ao configurar o Backup Gerenciado do SQL Server no Microsoft Azure para a primeira instância do SQL Server. Se você estiver alterando uma configuração existente do Backup Gerenciado do SQL Server para o Microsoft Azure, esse parâmetro será opcional. Nesse caso, quaisquer valores de configuração não especificados mantêm seus valores existentes.

Para obter mais informações, consulte Habilitar backups gerenciados do SQL Server no Azure.

@database_name [ = ] 'database_name'

O nome do banco de dados para habilitar o backup gerenciado em um banco de dados específico.

Se @database_name estiver definido como NULL, as configurações estarão no nível da instância (aplica-se a todos os novos bancos de dados criados na instância).

@container_url [ = ] 'Azure_Storage_blob_container'

Uma URL que indica o local do backup. Quando @credential_name é NULL, essa URL é uma URL de assinatura de acesso compartilhado (SAS) para um contêiner de blob no Armazenamento do Azure, e os backups usam o novo backup para bloquear a funcionalidade de blob. Para obter mais informações, consulte Noções básicas sobre SAS. Quando @credential_name é especificado, essa é uma URL de conta de armazenamento e os backups usam a funcionalidade de backup para blob de página preterida.

Se a URL do SAS tiver o token SAS incluído, você deverá separá-lo do token do SAS no ponto de interrogação e não incluir o ponto de interrogação.

Por exemplo, https://managedbackupstorage.blob.core.windows.net/backupcontainer?sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl resulta nos dois valores a seguir:

Tipo Saída
URL do Contêiner https://managedbackupstorage.blob.core.windows.net/backupcontainer
Token SAS sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl

Observação

Somente uma URL SAS é suportada para esse parâmetro no momento.

@retention_days [ = ] retention_period_in_days

O período de retenção para os arquivos de backup em dias. @retention_days é int. Esse é um parâmetro necessário ao configurar o Backup Gerenciado do SQL Server para o Microsoft Azure pela primeira vez na instância do SQL Server. Quando você altera a configuração do Backup Gerenciado do SQL Server para o Microsoft Azure, esse parâmetro é opcional. Se não for especificado, os valores de configuração existentes serão retidos.

@credential_name [ = ] 'sql_credential_name'

O nome da credencial SQL usada para autenticar na conta de armazenamento do Azure. @credential_name é sysname. Quando especificado, o backup é armazenado em um blob de página. Se esse parâmetro for NULL, o backup será armazenado como um blob de bloco. O backup no blob de página foi preterido, portanto, é preferível usar a nova funcionalidade de backup de blob de bloco. Quando usado para alterar a configuração do Backup Gerenciado do SQL Server para o Microsoft Azure, esse parâmetro é opcional. Se não for especificado, os valores de configuração existentes serão mantidos.

Aviso

O parâmetro @credential_name não é suportado no momento. Somente o backup para bloquear blob é suportado, o que requer que esse parâmetro seja NULL.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Permissões

Requer associação à função de banco de dados db_backupoperator , com permissões ALTER ANY CREDENTIAL e permissões EXECUTE no sp_delete_backuphistory procedimento armazenado.

Exemplos

R. Criar contêiner de conta de armazenamento e URL SAS

Você pode criar o contêiner da conta de armazenamento e a URL de assinatura de acesso compartilhado (SAS) usando os comandos mais recentes do Azure PowerShell. O exemplo a mystorageaccount seguir cria um novo contêiner myContainer na conta de armazenamento e, em seguida, obtém uma URL SAS para ele com permissões completas.

Para obter mais informações sobre assinaturas de acesso compartilhado, confira Conceder acesso limitado a recursos de Armazenamento do Azure usando SAS (assinaturas de acesso compartilhado). Para obter um exemplo de script do PowerShell, consulte Criar uma assinatura de acesso compartilhado.

$context = New-AzureStorageContext -StorageAccountName mystorageaccount -StorageAccountKey (Get-AzureStorageKey -StorageAccountName mystorageaccount).Primary
New-AzureStorageContainer -Name myContainer -Context $context
New-AzureStorageContainerSASToken -Name myContainer -Permission rwdl -FullUri -Context $context

B. Habilitar o Backup Gerenciado do SQL Server no Azure

O exemplo a seguir habilita o Backup Gerenciado do SQL Server no Microsoft Azure para a instância do SQL Server em que é executado, define a política de retenção como 30 dias e define o destino como um contêiner nomeado myContainer em uma conta de armazenamento chamada mystorageaccount.

USE msdb;
GO

EXEC managed_backup.sp_backup_config_basic @enable_backup = 1,
    @container_url = 'https://mystorageaccount.blob.core.windows.net/myContainer',
    @retention_days = 30;
GO

C. Desabilitar o Backup Gerenciado do SQL Server no Azure

O exemplo a seguir desabilita o Backup Gerenciado do SQL Server no Microsoft Azure para a instância do SQL Server em que ele é executado.

USE msdb;
GO

EXEC managed_backup.sp_backup_config_basic @enable_backup = 0;
GO