若要在创建 SQL 托管实例时配置维护时段,请在“其他设置”页上设置所需的“维护时段”。
在创建 SQL 托管实例时设置维护时段
有关创建新的 SQL 托管实例的分步信息,请参阅 “创建 Azure SQL 托管实例”。
以下示例演示如何使用 Azure PowerShell 配置维护时段。 可以安装 Azure PowerShell 或使用 Azure Cloud Shell。
启动 Azure Cloud Shell
Azure Cloud Shell 是免费的交互式 shell,可以使用它运行本文中的步骤。 它预安装有常用 Azure 工具并将其配置与帐户一起使用。
若要打开 Cloud Shell,请从代码块的右上角选择试一试。 也可以通过转到 https://shell.azure.com 在单独的浏览器标签页中启动 Cloud Shell。
当 Cloud Shell 打开时,请验证是否为环境选择了“PowerShell”。 后续会话将在 PowerShell 环境中使用 Azure CLI。 选择“复制”以复制代码块,将其粘贴到 Cloud Shell 中,然后按 Enter 来运行它。
发现可用维护时段
设置维护时段时,每个区域会提供自己的维护时段选项,这些选项对应于区域的时区。
发现 SQL 托管实例维护时段
以下示例使用 Get-AzMaintenancePublicConfiguration cmdlet 返回 eastus2 区域的可用维护时段。 对于托管实例,请将 MaintenanceScope 设置为 SQLManagedInstance。
$location = "eastus2"
Write-Host "Available maintenance schedules in ${location}:"
$configurations = Get-AzMaintenancePublicConfiguration
$configurations | ?{ $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLManagedInstance"}
在创建 SQL 托管实例时设置维护时段
以下示例创建新的 SQL 托管实例,并使用 New-AzSqlInstance cmdlet 设置维护时段。 该维护时段是针对实例设置的,因此该实例中的所有数据库都采用相同的维护时段计划。 对于 -MaintenanceConfigurationId,MaintenanceConfigName 必须是对实例所在区域有效的值。 若要获取对区域有效的值,请参阅发现可用维护时段。
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}"
以下示例演示如何使用 Azure CLI 配置维护时段。 可以安装 Azure CLI 或使用 Azure Cloud Shell。
启动 Azure Cloud Shell
Azure Cloud Shell 是免费的交互式 shell,可以使用它运行本文中的步骤。 它预安装有常用 Azure 工具并将其配置与帐户一起使用。
若要打开 Cloud Shell,请从代码块的右上角选择试一试。 也可以通过转到 https://shell.azure.com 在单独的浏览器标签页中启动 Cloud Shell。
当 Cloud Shell 打开时,请验证是否为环境选择了Bash。 后续会话将在 Bash 环境中使用 Azure CLI。 选择“复制”以复制代码块,将其粘贴到 Cloud Shell 中,然后按 Enter 来运行它。
登录 Azure
Cloud Shell 会在登录时使用的初始帐户下自动进行身份验证。 使用以下脚本通过其他订阅登录,将 <Subscription ID> 替换为 Azure 订阅 ID。 如果没有 Azure 订阅,请在开始之前创建一个 Azure 免费帐户。
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
有关详细信息,请参阅设置有效的订阅或以交互方式登录
发现可用维护时段
设置维护时段时,每个区域会提供自己的维护时段选项,这些选项对应于区域的时区。
发现 SQL 托管实例维护时段
以下示例使用 az maintenance public-configuration list 命令返回 eastus2 区域的可用维护时段。 对于托管实例,请将 maintenanceScope 设置为 SQLManagedInstance。
az maintenance public-configuration list --query "[?location=='eastus2'&&contains(maintenanceScope,'SQLManagedInstance')]"
在创建 SQL 托管实例时设置维护时段
以下示例创建新的 SQL 托管实例,并使用 az sql mi create 设置维护时段。 该维护时段是针对实例设置的,因此该实例中的所有数据库都采用相同的维护时段计划。 MaintenanceConfigName 必须是对实例所在区域有效的值。 若要获取对区域有效的值,请参阅发现可用维护时段。 将 <password> 替换为有效的密码。
az sql mi create -g mygroup -n myinstance -l mylocation -i -u myusername -p <password> --subnet /subscriptions/{SubID}/resourceGroups/{ResourceGroup}/providers/Microsoft.Network/virtualNetworks/{VNETName}/subnets/{SubnetName} -m /subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}
以下步骤使用 Azure 门户对现有 SQL 托管实例设置维护时段:
设置现有 SQL 托管实例的维护时段
导航到要为其设置维护时段的 SQL 托管实例。
在“设置”菜单中选择“维护”,然后选择所需的维护时段 。
在现有 SQL 托管实例上设置维护时段
以下示例使用 Set-AzSqlInstance cmdlet 在现有 SQL 托管实例上设置维护时段。
请务必确保 $maintenanceConfig 值对于你的实例所在区域有效。 若要获取对区域有效的值,请参阅发现可用维护时段。
Set-AzSqlInstance -Name "your_mi_name" `
-ResourceGroupName "your_resource_group_name" `
-MaintenanceConfigurationId "/subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}"
以下示例演示如何使用 Azure CLI 配置维护时段。 可以安装 Azure CLI 或使用 Azure Cloud Shell。
在现有 SQL 托管实例上设置维护时段
以下示例使用 az sql mi update 设置维护时段。 该维护时段是针对实例设置的,因此该实例中的所有数据库都采用相同的维护时段计划。 对于 -MaintenanceConfigurationId,MaintenanceConfigName 必须是对实例所在区域有效的值。 若要获取对区域有效的值,请参阅发现可用维护时段。
az sql mi update -g mygroup -n myinstance -m /subscriptions/{SubID}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_{Region}_{MaintenanceConfigName}