PowerShell e CLI do Azure para Alias de DNS do Banco de Dados SQL do Azure

Aplica-se a:Banco de Dados SQL do Azure

Este artigo fornece o módulo Az do Azure ou scripts da CLI do Azure para demonstrar como você pode administrar um alias DNS para o servidor lógico do SQL do Azure que hospeda seu Banco de Dados SQL do Azure.

Alias de DNS na cadeia de conexão

Para conectar um SQL Server lógico, um cliente como o SSMS (SQL Server Management Studio) pode fornecer o nome do alias DNS em vez do nome do servidor verdadeiro. Na cadeia de caracteres de servidor de exemplo a seguir, o alias any-unique-alias-name substitui o primeiro nó delimitado por pontos na cadeia de caracteres de servidor de quatro nós:

<yourServer>.database.windows.net

Pré-requisitos

Para executar o script de demonstração do PowerShell fornecido neste artigo, verifique os seguintes pré-requisitos:

Exemplo

Os exemplos de código a seguir começam atribuindo valores literais a diversas variáveis.

Para executar o código, edite os valores de espaço reservado para corresponderem a valores reais do seu sistema.

Use os seguintes cmdlets:

Para instalar ou atualizar, confira Instalar o módulo do Azure PowerShell.

Use Get-Module -ListAvailable Az em powershell_ise.exe para encontrar a versão.

$subscriptionName = '<subscriptionName>';
$sqlServerDnsAliasName = '<aliasName>';
$resourceGroupName = '<resourceGroupName>';  
$sqlServerName = '<sqlServerName>';
$resourceGroupName2 = '<resourceGroupNameTwo>'; # can be same or different than $resourceGroupName
$sqlServerName2 = '<sqlServerNameTwo>'; # must be different from $sqlServerName.

# login to Azure
Connect-AzAccount -SubscriptionName $subscriptionName;
$subscriptionId = Get-AzSubscription -SubscriptionName $subscriptionName;

Write-Host 'Assign an alias to server 1...';
New-AzSqlServerDnsAlias –ResourceGroupName $resourceGroupName -ServerName $sqlServerName `
    -Name $sqlServerDnsAliasName;

Write-Host 'Get the aliases assigned to server 1...';
Get-AzSqlServerDnsAlias –ResourceGroupName $resourceGroupName -ServerName $sqlServerName;

Write-Host 'Move the alias from server 1 to server 2...';
Set-AzSqlServerDnsAlias –ResourceGroupName $resourceGroupName2 -TargetServerName $sqlServerName2 `
    -Name $sqlServerDnsAliasName `
    -SourceServerResourceGroup $resourceGroupName -SourceServerName $sqlServerName `
    -SourceServerSubscriptionId $subscriptionId.Id;

Write-Host 'Get the aliases assigned to server 2...';
Get-AzSqlServerDnsAlias –ResourceGroupName $resourceGroupName2 -ServerName $sqlServerName2;

Write-Host 'Remove the alias from server 2...';
Remove-AzSqlServerDnsAlias –ResourceGroupName $resourceGroupName2 -ServerName $sqlServerName2 `
    -Name $sqlServerDnsAliasName;