A capacidade de mudar para uma janela de manutenção diferente não está disponível para todos os níveis de serviço ou em todas as regiões. Para obter detalhes sobre a disponibilidade de recursos, consulte Disponibilidade da janela de manutenção.
Para configurar a janela de manutenção ao criar um banco de dados, pool elástico ou instância gerenciada, defina a janela Manutenção desejada na página Configurações adicionais.
Definir a janela de manutenção ao criar um único banco de dados ou pool elástico
Para obter informações passo a passo sobre como criar um novo banco de dados ou pool, consulte Criar um banco de dados único do Banco de Dados SQL do Azure.
Definir a janela de manutenção ao criar uma instância gerenciada
Para obter informações passo a passo sobre como criar uma nova instância gerenciada, consulte Criar uma instância gerenciada SQL do Azure.
Os exemplos a seguir mostram como configurar a janela de manutenção usando o Azure PowerShell. Você pode instalar o Azure PowerShell ou usar o Azure Cloud Shell.
Iniciar o Azure Cloud Shell
O Azure Cloud Shell é um shell interativo gratuito que pode utilizar para executar os passos neste artigo. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.
Para abrir o Cloud Shell, selecione Experimente no canto superior direito de um bloco de código. Também pode iniciar o Cloud Shell num separador do browser separado ao aceder a https://shell.azure.com.
Quando o Cloud Shell abrir, verifique se o PowerShell está selecionado para seu ambiente. As sessões subsequentes usarão a CLI do Azure em um ambiente do PowerShell. Selecione Copiar para copiar os blocos de código, cole-o no Cloud Shell e pressione Enter para executá-lo.
Descubra as janelas de manutenção disponíveis
Ao definir a janela de manutenção, cada região tem suas próprias opções de janela de manutenção que correspondem ao fuso horário da região em que o banco de dados ou pool está localizado.
Descubra as janelas de manutenção do Banco de dados SQL e do pool elástico
O exemplo a seguir retorna as janelas de manutenção disponíveis para a região eastus2 usando o cmdlet Get-AzMaintenancePublicConfiguration. Para bancos de dados e pools elásticos, defina MaintenanceScope
como SQLDB
.
$location = "eastus2"
Write-Host "Available maintenance schedules in ${location}:"
$configurations = Get-AzMaintenancePublicConfiguration
$configurations | ?{ $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLDB"}
Descubra as janelas de manutenção da instância gerenciada 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 um único banco de dados
O exemplo a seguir cria um novo banco de dados e define a janela de manutenção usando o cmdlet New-AzSqlDatabase . O -MaintenanceConfigurationId
deve ser definido como um valor válido para a região do banco de dados. Para obter valores válidos para a sua região, consulte Descobrir janelas de manutenção disponíveis.
# Set variables for your database
$resourceGroupName = "your_resource_group_name"
$serverName = "your_server_name"
$databaseName = "your_db_name"
# Set selected maintenance window
$maintenanceConfig = "SQL_EastUS2_DB_1"
Write-host "Creating a standard-series (Gen5) 2 vCore database with maintenance window ${maintenanceConfig} ..."
$database = New-AzSqlDatabase `
-ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-DatabaseName $databaseName `
-Edition GeneralPurpose `
-ComputeGeneration Gen5 `
-VCore 2 `
-MaintenanceConfigurationId $maintenanceConfig
$database
Definir a janela de manutenção ao criar um pool elástico
O exemplo a seguir cria um novo pool elástico e define a janela de manutenção usando o cmdlet New-AzSqlElasticPool . A janela de manutenção é definida no pool elástico, portanto, todos os bancos de dados no pool têm a programação da janela de manutenção do pool. O -MaintenanceConfigurationId
deve ser definido como um valor válido para a região do seu pool. Para obter valores válidos para a sua região, consulte Descobrir janelas de manutenção disponíveis.
# Set variables for your pool
$resourceGroupName = "your_resource_group_name"
$serverName = "your_server_name"
$poolName = "your_pool_name"
# Set selected maintenance window
$maintenanceConfig = "SQL_EastUS2_DB_2"
Write-host "Creating a Standard 50 pool with maintenance window ${maintenanceConfig} ..."
$pool = New-AzSqlElasticPool `
-ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-ElasticPoolName $poolName `
-Edition "Standard" `
-Dtu 50 `
-DatabaseDtuMin 10 `
-DatabaseDtuMax 20 `
-MaintenanceConfigurationId $maintenanceConfig
$pool
Definir a janela de manutenção ao criar uma instância gerenciada
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 a programação da janela de manutenção da instância. Para -MaintenanceConfigurationId
, o MaintenanceConfigName deve ser um valor válido para a região da instância. Para obter valores válidos para a 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 como configurar a janela de manutenção usando a CLI do Azure. Você pode instalar a CLI do Azure ou usar o Azure Cloud Shell.
Configurar a janela de manutenção com a CLI do Azure só está disponível para a Instância Gerenciada do SQL.
Iniciar o Azure Cloud Shell
O Azure Cloud Shell é um shell interativo gratuito que pode utilizar para executar os passos neste artigo. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.
Para abrir o Cloud Shell, selecione Experimente no canto superior direito de um bloco de código. Também pode iniciar o Cloud Shell num separador do browser separado ao aceder a https://shell.azure.com.
Quando o Cloud Shell abrir, verifique se o Bash está selecionado para o seu ambiente. As sessões subsequentes usarão a CLI do Azure em um ambiente Bash. Selecione Copiar para copiar os blocos de código, cole-o no Cloud Shell e pressione Enter para executá-lo.
Iniciar sessão no Azure
O Cloud Shell é autenticado automaticamente na conta inicial com a qual entrou conectado. Use o script a seguir para entrar usando uma assinatura diferente, substituindo <Subscription ID>
pela sua ID de Assinatura do Azure. Se não tiver uma subscrição 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, consulte definir assinatura ativa ou fazer login interativamente
Descubra as janelas de manutenção disponíveis
Ao definir a janela de manutenção, cada região tem suas próprias opções de janela de manutenção que correspondem ao fuso horário da região em que o banco de dados ou pool está localizado.
Descubra as janelas de manutenção do Banco de dados SQL e do pool elástico
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 bancos de dados e pools elásticos, defina maintenanceScope
como SQLDB
.
location="eastus2"
az maintenance public-configuration list --query "[?location=='$location'&&contains(maintenanceScope,'SQLDB')]"
Descubra as janelas de manutenção da instância gerenciada 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 um único banco de dados
O exemplo a seguir cria um novo banco de dados e define a janela de manutenção usando o comando az sql db create . O --maint-config-id
(ou -m
) deve ser definido como um valor válido para a região do banco de dados. Para obter valores válidos para a sua região, consulte Descobrir janelas de manutenção disponíveis.
# Set variables for your database
resourceGroupName="your_resource_group_name"
serverName="your_server_name"
databaseName="your_db_name"
# Set selected maintenance window
maintenanceConfig="SQL_EastUS2_DB_1"
# Create database
az sql db create \
--resource-group $resourceGroupName \
--server $serverName \
--name $databaseName \
--edition GeneralPurpose \
--family Gen5 \
--capacity 2 \
--maint-config-id $maintenanceConfig
Definir a janela de manutenção ao criar um pool elástico
O exemplo a seguir cria um novo pool elástico e define a janela de manutenção usando o cmdlet az sql elastic-pool create . A janela de manutenção é definida no pool elástico, portanto, todos os bancos de dados no pool têm a programação da janela de manutenção do pool. O --maint-config-id
(ou -m
) deve ser definido como um valor válido para a região do seu pool. Para obter valores válidos para a sua região, consulte Descobrir janelas de manutenção disponíveis.
# Set variables for your pool
resourceGroupName="your_resource_group_name"
serverName="your_server_name"
poolName="your_pool_name"
# Set selected maintenance window
maintenanceConfig="SQL_EastUS2_DB_2"
# Create elastic pool
az sql elastic-pool create \
--resource-group $resourceGroupName \
--server $serverName \
--name $poolName \
--edition GeneralPurpose \
--family Gen5 \
--capacity 2 \
--maint-config-id $maintenanceConfig
Definir a janela de manutenção ao criar uma instância gerenciada
O exemplo a seguir cria uma nova instância gerenciada e define a janela de manutenção usando az sql mi create. A janela de manutenção é definida na instância, portanto, todos os bancos de dados na instância têm a programação da janela de manutenção da instância. MaintenanceConfigName deve ser um valor válido para a região da instância. Para obter valores válidos para a 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 um banco de dados, uma breve reconfiguração (vários segundos) pode ser experimentada em alguns casos, à medida que o Azure aplica as alterações necessárias.
As etapas a seguir definem a janela de manutenção em um banco de dados existente, pool elástico ou instância gerenciada usando o portal do Azure:
Definir a janela de manutenção para um banco de dados existente ou pool elástico
Navegue até o banco de dados SQL ou pool elástico para o qual você deseja definir a janela de manutenção.
No menu Configurações, selecione Manutenção e, em seguida, selecione a janela de manutenção desejada.
Definir a janela de manutenção para uma instância gerenciada existente
Navegue até a instância gerenciada para a qual deseja definir a janela de manutenção.
No menu Configurações, selecione Manutenção e, em seguida, selecione a janela de manutenção desejada.
Definir a janela de manutenção para um banco de dados existente
O exemplo a seguir define a janela de manutenção em um banco de dados existente usando o cmdlet Set-AzSqlDatabase .
O -MaintenanceConfigurationId
deve ser definido como um valor válido para a região do banco de dados. Para obter valores válidos para a sua região, consulte Descobrir janelas de manutenção disponíveis.
# Select different maintenance window
$maintenanceConfig = "SQL_EastUS2_DB_2"
Write-host "Changing database maintenance window to ${maintenanceConfig} ..."
$database = Set-AzSqlDatabase `
-ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-DatabaseName $databaseName `
-MaintenanceConfigurationId $maintenanceConfig
$database
Definir a janela de manutenção em um pool elástico existente
O exemplo a seguir define a janela de manutenção em um pool elástico existente usando o cmdlet Set-AzSqlElasticPool .
É importante certificar-se de que o valor é válido para a $maintenanceConfig
região do seu pool. Para obter valores válidos para uma região, consulte Descobrir janelas de manutenção disponíveis.
# Select different maintenance window
$maintenanceConfig = "SQL_EastUS2_DB_1"
Write-host "Changing pool maintenance window to ${maintenanceConfig} ..."
$pool = Set-AzSqlElasticPool `
-ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-ElasticPoolName $poolName `
-MaintenanceConfigurationId $maintenanceConfig
$pool
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 certificar-se de que o $maintenanceConfig
valor deve ser um valor válido para a região da sua instância. Para 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 como configurar a janela de manutenção usando a CLI do Azure. Você pode instalar a CLI do Azure ou usar o Azure Cloud Shell.
Definir a janela de manutenção para um banco de dados existente
O exemplo a seguir define a janela de manutenção em um banco de dados existente usando o comando az sql db update . O --maint-config-id
(ou -m
) deve ser definido como um valor válido para a região do banco de dados. Para obter valores válidos para a sua região, consulte Descobrir janelas de manutenção disponíveis.
# Select different maintenance window
maintenanceConfig="SQL_EastUS2_DB_2"
# Update database
az sql db update \
--resource-group $resourceGroupName \
--server $serverName \
--name $databaseName \
--maint-config-id $maintenanceConfig
Definir a janela de manutenção em um pool elástico existente
O exemplo a seguir define a janela de manutenção em um pool elástico existente usando o comando az sql elastic-pool update .
É importante certificar-se de que o valor é válido para a maintenanceConfig
região do seu pool. Para obter valores válidos para uma região, consulte Descobrir janelas de manutenção disponíveis.
# Select different maintenance window
maintenanceConfig="SQL_EastUS2_DB_1"
# Update pool
az sql elastic-pool update \
--resource-group $resourceGroupName \
--server $serverName \
--name $poolName \
--maint-config-id $maintenanceConfig
Definir a janela de manutenção em uma instância gerenciada existente
O exemplo a seguir define a janela de manutenção usando az sql mi update. A janela de manutenção é definida na instância, portanto, todos os bancos de dados na instância têm a programação da janela de manutenção da instância. Para -MaintenanceConfigurationId
, o MaintenanceConfigName deve ser um valor válido para a região da instância. Para obter valores válidos para a 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}_{MainteanceConfigName}
Certifique-se de excluir recursos desnecessários depois de terminá-los para evitar cobranças desnecessárias.