PowerShell und Azure CLI für DNS-Alias für Azure SQL-Datenbank

Gilt für:Azure SQL-Datenbank

Dieser Artikel enthält azure PowerShell Az-Modul oder Azure CLI-Skripts, um zu veranschaulichen, wie Sie einen DNS-Alias für den logischen Azure SQL-Server verwalten können, auf dem Ihre Azure SQL-Datenbank gehostet wird.

DNS-Alias in der Verbindungszeichenfolge

Um einen logischen SQL-Server zu verbinden, kann ein Client wie SQL Server Management Studio (SSMS) den DNS-Aliasnamen anstelle des tatsächlichen Servernamens angeben. In der folgenden Beispiel-Serverzeichenfolge ersetzt der Alias any-unique-alias-name den ersten Punkt-getrennten Knoten in der Serverzeichenfolge, die aus vier Knoten besteht:

<yourServer>.database.windows.net

Voraussetzungen

Um das in diesem Artikel angegebene Demo-PowerShell-Skript auszuführen, stellen Sie die folgenden Voraussetzungen sicher:

Beispiel

Im folgenden Codebeispiel werden mehreren Variablen zunächst Literalwerte zugewiesen.

Um den Code auszuführen, ändern Sie die Platzhalterwerte in die entsprechenden tatsächlichen Werte in Ihrem System.

Verwenden Sie die folgenden Cmdlets:

Informationen zum Installieren oder Upgraden finden Sie unter Installieren und Konfigurieren von Azure PowerShell.

Verwenden Sie Get-Module -ListAvailable Az in powershell_ise.exe, um die Version zu finden.

$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;