Monitorar consultas e melhorar o desempenho da carga de trabalho com ajuste automático no portal do Azure
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. Você pode examinar as recomendações e aplicá-las manualmente ou permitir que o Banco de Dados SQL do Azure aplique automaticamente ações corretivas. 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
só pode ser configurada por meio de T-SQL. A configuração baseada no portal do Azure e as opções de ajuste automático de índice descritas neste artigo não se aplicam à Instância Gerenciada de SQL do Azure.
Não há suporte para a configuração de opções de ajuste automático por meio do modelo do ARM (Azure Resource Manager).
Habilitar o ajuste automático no servidor
No servidor, você pode optar por herdar ou não a configuração de ajuste automático dos “Padrões do Azure”. Os padrões do Azure são FORCE_LAST_GOOD_PLAN
habilitado, CREATE_INDEX
desabilitado 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.
Não há suporte para a configuração de opções de ajuste automático por meio do modelo do ARM (Azure Resource Manager).
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". Esses padrões são os seguintes:
FORCE_LAST_GOOD_PLAN
está habilitadoCREATE_INDEX
está desabilitadoDROP_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, selecione 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.
Não há suporte para a configuração de opções de ajuste automático por meio do modelo do ARM (Azure Resource Manager).
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 para AUTO
aplica os padrões do Azure. Definindo-o como INHERIT
, a configuração de ajuste automático é herdada do servidor pai. Se você escolher CUSTOM
, deverá 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 seguinte consulta:
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 substitui qualquer configuração herdada pelo banco de dados e habilita a opção de ajuste. Defini-lo como OFF
também substitui qualquer configuração herdada pelo banco de dados e desabilita a opção de ajuste. As opções de ajuste automático para as quais DEFAULT
é especificada herdam a configuração de ajuste automático das configurações de nível de 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 criar ou excluir um índice, são replicadas automaticamente para secundários geográficos. A tentativa de habilitar o ajuste automático por meio do T-SQL no secundário somente leitura resultará em uma 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 do T-SQL para configurar o ajuste automático, confira Opções de ALTER DATABASE SET.
Solução de problemas
O gerenciamento de recomendação automatizado está desabilitado
Se você receber mensagens de erro informando que o gerenciamento de recomendação automatizado foi desabilitado ou foi desabilitado pelo sistema, as causas mais comuns serã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 SSMS (SQL Server Management Studio) e siga estas etapas:
- Conecte-se ao banco de dados SQL do Azure.
- Clique com o botão direito do mouse no banco de dados.
- Acesse Propriedades e selecione Repositório de Consultas.
- Altere o Modo de Operação para Leitura/Gravação.
- Altere o Modo de Captura do Repositório para Automático.
- Altere o Modo de Limpeza Baseado em Tamanho para Automático.
Permissões
Para o Banco de Dados SQL do Azure, gerenciar o ajuste automático no portal do Azure ou usar o PowerShell ou a API REST requer associação em funções internas de RBAC (controle de acesso baseado em função) 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 receber as permissões necessárias para gerenciar o ajuste automático com o 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.
Conteúdo relacionado
- Ajuste automático no Banco de Dados SQL do Azure e na Instância Gerenciada de SQL do Azure
- recomendações de desempenho do Orientador de Banco de Dados para o Banco de Dados SQL do Azure
- Análise de Desempenho de Consultas para o Banco de Dados SQL do Azure