Habilite o ajuste automático para monitorar consultas e melhorar o desempenho da carga de trabalho
Aplica-se a: Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure
O Banco de Dados SQL do Azure gerencia automaticamente serviços de dados que monitoram as suas consultas e identifica a ação que pode ser executada para melhorar o desempenho da carga de trabalho. Examine as recomendações e aplique-as manualmente ou permita que o Banco de Dados SQL do Azure aplique as ações corretivas automaticamente – isso é conhecido como modo de ajuste automático.
O ajuste automático pode ser habilitado no nível do servidor ou do banco de dados, através de:
- O Portal do Azure
- Chamadas API REST
- Comandos T-SQL
Observação
Para a Instância Gerenciada de SQL do Azure, a opção com suporte FORCE_LAST_GOOD_PLAN pode ser configurada apenas por meio de T-SQL. A configuração baseada no portal do Azure e as opções de ajuste de índice automático descritas neste artigo não se aplicam à Instância Gerenciada de SQL do Azure.
Observação
Não há suporte para a configuração de opções de ajuste automático por meio de modelo ARM (Azure Resource Manager) no momento.
Habilitar o ajuste automático no servidor
No nível do servidor, você pode escolher entre herdar ou não a configuração de ajuste automático de "Padrões do Azure". Os padrões do Azure são: FORCE_LAST_GOOD_PLAN habilitado, CREATE_INDEX habilitado e DROP_INDEX desabilitado.
Portal do Azure
Para habilitar o ajuste automático em um servidor em Banco de Dados SQL do Azure, navegue para o servidor no portal do Azure e, em seguida, selecione Ajuste automático no menu.
Selecione as opções de ajuste automático que você deseja habilitar e selecione Aplicar.
As opções de ajuste automático em um servidor são aplicadas a todos os bancos de dados deste servidor. Por padrão, todos os bancos de dados herdam a configuração de seu servidor pai, mas isso pode ser substituído e especificado para cada banco de dados individualmente.
API REST
Saiba mais sobre o uso da API REST para ativar o ajuste automático em um servidor, consulte Métodos UPDATE e GET HTTP para ajuste automático de Servidor.
Habilitar o ajuste automático em um banco de dados individual
O Banco de Dados SQL do Azure permite especificar a configuração de ajuste automático individualmente para cada banco de dados. No nível do banco de dados, você pode escolher entre herdar ou não a configuração de ajuste automático do servidor pai, "Padrões do Azure". Os padrões do Azure são definidos para FORCE_LAST_GOOD_PLAN está habilitado, CREATE_INDEX está desabilitado e DROP_INDEX está desabilitado.
Dica
A recomendação geral é gerenciar a configuração de ajuste automático no nível de servidor, de forma que as mesmas definições de configuração possam ser aplicadas em cada banco de dados automaticamente. Configure o ajuste automático em um banco de dados individual somente se você precisar que esse banco de dados tenha configurações diferentes de outras configurações herdadas do mesmo servidor.
Portal do Azure
Para habilitar o ajuste automático em um banco de dados individual, navegue para o banco de dados no portal do Azure e selecione Ajuste automático.
As configurações de ajustes automático individuais podem ser definidas separadamente para cada banco de dados. Manualmente, você pode configurar uma opção de ajuste automático individual ou especificar que uma opção herde as configurações do servidor.
Depois de selecionar a configuração desejada, clique em Aplicar.
API REST
Para saber mais sobre como usar a API REST para habilitar o ajuste automático em um único banco de dados, consulte Métodos UPDATE e GET HTTP para ajuste automático de Banco de Dados SQL do Azure.
T-SQL
Para habilitar o ajuste automático em um único banco de dados por meio de T-SQL, conecte-se ao banco de dados e execute a seguinte consulta:
ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM
Definir o ajuste automático como AUTO aplicará os Padrões do Azure. Definindo-o como INHERIT, a configuração de ajuste automático será herdada do servidor pai. Se escolher CUSTOM, você precisará configurar manualmente o ajuste automático.
Para configurar opções de ajuste automático individuais por meio do T-SQL, conecte-se ao banco de dados e execute a consulta de modo similar a esta:
ALTER DATABASE current SET AUTOMATIC_TUNING (FORCE_LAST_GOOD_PLAN = ON, CREATE_INDEX = ON, DROP_INDEX = OFF)
Definir a opção de ajuste individual como ON substituirá qualquer configuração de banco de dados herdada e habilitará a opção de ajuste. Defini-la a como OFF substituirá qualquer configuração herdada por esse banco de dados e desabilitará a opção de ajuste. A opção de ajuste automático, que está definida como DEFAULT, fará com que a configuração de ajuste automático seja herdada das configurações no nível do servidor.
Importante
No caso da replicação geográfica ativa, o Ajuste automático precisa ser configurado somente no banco de dados primário. As ações de ajuste aplicadas automaticamente, como criação ou exclusão de índice, serão replicadas automaticamente para as áreas geográficas secundárias. A tentativa de habilitar o Ajuste automático por meio de T-SQL no secundário somente leitura resultará em falha, pois não há suporte para uma configuração de ajuste diferente no banco de dados secundário somente leitura.
Para saber mais sobre as opções de T-SQL para configurar o ajuste automático, confira Opções ALTER DATABASE SET (Transact-SQL) .
Solução de problemas
O gerenciamento de recomendação automatizado está desabilitado
No caso de mensagens de erro dizendo que o gerenciamento de recomendação automatizado foi desabilitado ou simplesmente desabilitado pelo sistema, as causas mais comuns são:
- O Repositório de Consultas não está habilitado, ou
- O Repositório de Consultas está no modo somente leitura para um banco de dados especificado, ou
- O Repositório de Consultas parou porque ficou sem espaço de armazenamento alocado.
As etapas a seguir podem ser consideradas para corrigir esse problema:
- Limpe o Repositório de Consultas ou modifique o período de retenção de dados para "automático" usando T-SQL ou aumente o tamanho máximo do Repositório de Consultas. Veja como configurar a política de retenção e a política de captura para Repositório de Consultas.
- Use o SQL Server Management Studio (SSMS) e siga estas etapas:
- Conecte-se e ao Banco de Dados SQL do Azure
- Clique com o botão direito do mouse no banco de dados
- Acesse Propriedades e clique em Repositório de Consultas
- Altere o Modo de Operação para Read-Write
- Altere o Modo de Captura do Armazenamento para Automático
- Altere o Modo de Limpeza Baseado em Tamanho para Automático
Permissões
Para Banco de Dados SQL do Azure, o gerenciamento do ajuste automático no portal do Azure ou usando o PowerShell ou a API REST requer associação em funções RBAC internas do Azure.
Para usar o ajuste automático, a permissão mínima necessária a ser concedida ao usuário é a associação à função Colaborador do Banco de Dados SQL. Considere também o uso de funções de privilégio mais alto, como Colaborador do SQL Server, Colaborador e Proprietário.
Para obter as permissões necessárias para gerenciar o ajuste automático com T-SQL, confira Permissões para ALTER DATABASE.
Configurar o ajuste automático das notificações por email
Para receber notificações por email automatizadas sobre as recomendações feitas pelo ajuste automático, consulte o guia de notificações de email de ajuste automático.
Próximas etapas
- Leia o artigo Ajuste automático para saber mais sobre o ajuste automático e como ele pode ajudar você a melhorar o desempenho.
- Consulte Recomendações de desempenho para obter uma visão geral das recomendações de desempenho do Banco de Dados SQL do Azure.
- Consulte Análise de desempenho de consultas para saber mais sobre como visualizar o impacto no desempenho de suas principais consultas.