Partilhar via


Configuração do servidor: suprimir erros do modelo de recuperação

Aplica-se a:Azure SQL Managed Instance

Os modelos de recuperação do SQL Server controlam a manutenção do log de transações. O modelo de recuperação completa garante que nenhum trabalho seja perdido devido a um arquivo de dados perdido ou danificado e oferece suporte à recuperação para um point-in-time arbitrário dentro da política de retenção de backup. O modelo de recuperação completa é o modelo de recuperação padrão e único com suporte na Instância Gerenciada SQL do Azure. As tentativas de alterar o modelo de recuperação na Instância Gerenciada SQL retornam uma mensagem de erro.

Na Instância Gerenciada SQL do Azure, você pode usar a suppress recovery model errors opção de configuração avançada para especificar se os comandos para alterar o modelo de recuperação de banco de dados retornam erros ou apenas avisos. Quando essa opção é definida como 1 (habilitada), a execução do comando ALTER DATABASE SET RECOVERY não altera o modelo de recuperação do banco de dados e retorna uma mensagem de aviso em vez de uma mensagem de erro. Quando essa opção é definida como 0 (desabilitada), a execução do comando ALTER DATABASE SET RECOVERY retorna uma mensagem de erro.

A opção suppress recovery model errors é útil nos casos em que aplicativos legados ou de terceiros tentam alterar o modelo de recuperação para Simples ou Bulk-logged, mesmo quando isso não é um requisito crítico ou obrigatório. Quando uma alteração do modelo de recuperação é o único bloqueador para usar a Instância Gerenciada SQL, ativar a suppress recovery model errors opção de configuração remove esse bloqueador. Esta opção é especialmente útil se uma solução alternativa de alterar o código do aplicativo não for viável ou acessível.

Examples

O exemplo a seguir permite a supressão de mensagens de erro relacionadas à alteração do modelo de recuperação de banco de dados e, em seguida, executa o comando para alterar o modelo de recuperação de banco de dados, retornando apenas um aviso. O modelo de recuperação não foi alterado. Substitua <database> pelo nome real do banco de dados.

-- Turn advanced configuration options on:
EXECUTE sp_configure 'show advanced options', 1;
GO

RECONFIGURE;
GO

-- Enable suppression of error messages for recovery model change:
EXECUTE sp_configure 'suppress recovery model errors', 1;
GO

RECONFIGURE;
GO

-- Execute command for changing recovery model to Simple:
ALTER DATABASE <database> SET RECOVERY SIMPLE;
GO