Importante
A configuração da janela de manutenção é uma operação assíncrona de execução prolongada, semelhante à alteração da camada de serviço do recurso de SQL do Azure. O recurso está disponível durante a operação, exceto uma pequena reconfiguração que ocorre no final da operação e normalmente dura até 8 segundos, mesmo no caso de transações de longa execução interrompidas. Para minimizar o impacto da reconfiguração, você deve executar a operação fora do horário de pico.
Para configurar a janela de manutenção ao criar uma instância gerenciada de SQL, defina a Janela de manutenção desejada na página Configurações adicionais.
Definir a janela de manutenção ao criar uma instância gerenciada de SQL
Para obter informações passo a passo sobre como criar uma nova instância gerenciada, consulte Criar uma Instância Gerenciada de SQL do Azure.
Os exemplos a seguir mostram como configurar a janela de manutenção usando o Azure PowerShell. É possível instalar o Azure PowerShell ou usar o Azure Cloud Shell.
Iniciar o Azure Cloud Shell
O Azure Cloud Shell é um shell gratuito e interativo que poderá ser usado para executar as etapas deste artigo. Ele tem ferramentas do Azure instaladas e configuradas para usar com sua conta.
Para abrir o Cloud Shell, selecione Experimentar no canto superior direito de um bloco de código. Você também pode iniciar o Cloud Shell em uma guia separada do navegador indo até https://shell.azure.com.
Quando o Cloud Shell abrir, verifique se o PowerShell está selecionado para seu ambiente. As sessões posteriores usarão a CLI do Azure em um ambiente do PowerShell. Selecione Copiar para copiar os blocos de código, cole o código no Cloud Shell e depois pressione Enter para executá-lo.
Descobrir as janelas de manutenção disponíveis
Ao definir a janela de manutenção, cada região tem as próprias opções de janela de manutenção que correspondem ao fuso horário da região.
Descobrir janelas de manutenção da Instância Gerenciada de SQL
O exemplo a seguir retorna as janelas de manutenção disponíveis para a região eastus2 usando o cmdlet Get-AzMaintenancePublicConfiguration. Para instâncias gerenciadas, defina MaintenanceScope
como SQLManagedInstance
.
$location = "eastus2"
Write-Host "Available maintenance schedules in ${location}:"
$configurations = Get-AzMaintenancePublicConfiguration
$configurations | ?{ $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLManagedInstance"}
Definir a janela de manutenção ao criar uma instância gerenciada de SQL
O exemplo a seguir cria uma nova instância gerenciada e define a janela de manutenção usando o cmdlet New-AzSqlInstance. A janela de manutenção é definida na instância. Portanto, todos os bancos de dados na instância têm o mesmo agendamento da janela de manutenção. Para -MaintenanceConfigurationId
, o MaintenanceConfigName deve ser um valor válido para a região da instância. Para obter valores válidos para sua região, consulte Descobrir janelas de manutenção disponíveis.
New-AzSqlInstance -Name "your_mi_name" `
-ResourceGroupName "your_resource_group_name" `
-Location "your_mi_location" `
-SubnetId /subscriptions/{SubID}/resourceGroups/{ResourceGroup}/providers/Microsoft.Network/virtualNetworks/{VNETName}/subnets/{SubnetName} `
-MaintenanceConfigurationId "/subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}"
Os exemplos a seguir mostram de que modo configurar a janela de manutenção usando a CLI do Azure. É possível instalar a CLI do Azure ou usar o Azure Cloud Shell.
Iniciar o Azure Cloud Shell
O Azure Cloud Shell é um shell gratuito e interativo que poderá ser usado para executar as etapas deste artigo. Ele tem ferramentas do Azure instaladas e configuradas para usar com sua conta.
Para abrir o Cloud Shell, selecione Experimentar no canto superior direito de um bloco de código. Você também pode iniciar o Cloud Shell em uma guia separada do navegador indo até https://shell.azure.com.
Quando o Cloud Shell abrir, verifique se o Bash está selecionado para o ambiente. As sessões posteriores usarão a CLI do Azure em um ambiente do Bash. Selecione Copiar para copiar os blocos de código, cole o código no Cloud Shell e depois pressione Enter para executá-lo.
Entrar no Azure
O Cloud Shell é autenticado automaticamente na conta inicial usada para entrar. Use o seguinte script para entrar usando uma assinatura diferente, substituindo <Subscription ID>
pela ID da Assinatura do Azure. Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Para obter mais informações, confira definir assinatura ativa ou iniciar sessão interativamente.
Descobrir as janelas de manutenção disponíveis
Ao definir a janela de manutenção, cada região tem as próprias opções de janela de manutenção que correspondem ao fuso horário da região.
Descobrir janelas de manutenção da Instância Gerenciada de SQL
O exemplo a seguir retorna as janelas de manutenção disponíveis para a região eastus2 usando o comando az maintenance public-configuration list. Para instâncias gerenciadas, defina maintenanceScope
como SQLManagedInstance
.
az maintenance public-configuration list --query "[?location=='eastus2'&&contains(maintenanceScope,'SQLManagedInstance')]"
Definir a janela de manutenção ao criar uma instância gerenciada de SQL
O exemplo a seguir cria uma nova instância gerenciada e define a janela de manutenção usando o comando az sql mi create. A janela de manutenção é definida na instância. Portanto, todos os bancos de dados na instância têm o mesmo agendamento da janela de manutenção. O MaintenanceConfigName deve ser um valor válido para a região da instância. Para obter valores válidos para sua região, consulte Descobrir janelas de manutenção disponíveis.
az sql mi create -g mygroup -n myinstance -l mylocation -i -u myusername -p mypassword --subnet /subscriptions/{SubID}/resourceGroups/{ResourceGroup}/providers/Microsoft.Network/virtualNetworks/{VNETName}/subnets/{SubnetName} -m /subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}
Ao aplicar uma seleção de janela de manutenção a uma instância gerenciada de SQL, poderá ocorrer uma breve reconfiguração (que demora vários segundos) em alguns casos, à medida que o Azure aplica as alterações necessárias.
As seguintes etapas definem a janela de manutenção em uma instância gerenciada de SQL existente ao usar o portal do Azure:
Definir a janela de manutenção para uma instância gerenciada existente
Navegue até a instância gerenciada de SQL para a qual você deseja definir a janela de manutenção.
No menu Configurações, selecione Manutenção, depois a janela de manutenção desejada.
Definir a janela de manutenção em uma instância gerenciada existente
O exemplo a seguir define a janela de manutenção em uma instância gerenciada existente usando o cmdlet Set-AzSqlInstance.
É importante verificar se o valor $maintenanceConfig
deve ser válido para a região da instância. A fim de obter valores válidos para uma região, consulte Descobrir janelas de manutenção disponíveis.
Set-AzSqlInstance -Name "your_mi_name" `
-ResourceGroupName "your_resource_group_name" `
-MaintenanceConfigurationId "/subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}"
Os exemplos a seguir mostram de que modo configurar a janela de manutenção usando a CLI do Azure. É possível instalar a CLI do Azure ou usar o Azure Cloud Shell.
Definir a janela de manutenção em uma instância gerenciada existente
O exemplo a seguir define a janela de manutenção usando o comando az sql mi update. A janela de manutenção é definida na instância. Portanto, todos os bancos de dados na instância têm o mesmo agendamento da janela de manutenção. Para -MaintenanceConfigurationId
, o MaintenanceConfigName deve ser um valor válido para a região da instância. Para obter valores válidos para sua região, consulte Descobrir janelas de manutenção disponíveis.
az sql mi update -g mygroup -n myinstance -m /subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}
Observação
Para exibir nomes amigáveis no portal do Azure, a Instância Gerenciada de SQL do Azure depende de configurações de manutenção como um recurso. As definições de manutenção para a Instância Gerenciada de SQL do Azure fazem parte das configurações de manutenção pública. Em algumas regiões do Azure recentemente adicionadas, pode ocorrer a situação em que a Instância Gerenciada de SQL está disponível para uso na região, enquanto as configurações de manutenção pública ainda estão em fase de criação. Nesse caso, o portal do Azure não exibirá os nomes amigáveis no menu suspenso e, em vez disso, os usuários verão os nomes do sistema:
- MI_1 que é equivalente à janela dos dias da semana: que abrange das 22h00 às 6h00, no horário local, de segunda a quinta-feira.
- MI_2 que é equivalente à janela de fim de semana: que abrange das 22h00 às 6h00, no horário local, de sexta-feira a domingo.