Dela via


PowerShell för hantering av DNS-alias till Azure SQL Database

gäller för:Azure SQL DatabaseAzure Synapse Analytics

Den här artikeln innehåller Azure PowerShell Az-modul eller Azure CLI-skript som visar hur du kan hantera ett DNS-alias för den logiska Azure SQL-servern som är värd för din Azure SQL Database.

DNS-alias i anslutningssträng

Om du vill ansluta en logisk SQL-serverkan en klient som SQL Server Management Studio (SSMS) tillhandahålla DNS-aliaset namn i stället för det sanna servernamnet. I följande exempelserversträng ersätter aliaset valfritt unikt aliasnamn den första punktavgränsade noden i serversträngen med fyra noder:

<yourServer>.database.windows.net

Förutsättningar

Om du vill köra demoskriptet för PowerShell som anges i den här artikeln gäller följande krav:

Exempel

Följande kodexempel börjar med att tilldela literalvärden till flera variabler.

Om du vill köra koden redigerar du platshållarvärdena så att de matchar verkliga värden i systemet.

De cmdlets som används är följande:

Information om hur du installerar eller uppgraderar finns i Installera Azure PowerShell-modulen.

Använd Get-Module -ListAvailable Az i powershell_ise.exeför att hitta versionen.

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