Share via


PowerShell voor DNS-alias naar Azure SQL Database

Van toepassing op: Azure SQL DatabaseAzure Synapse Analytics

Dit artikel bevat een PowerShell-script dat laat zien hoe u een DNS-alias kunt beheren voor de SQL-server die als host fungeert voor uw Azure SQL Database.

Notitie

Dit artikel is bijgewerkt voor gebruik van de Azure PowerShell Az-module of Azure CLI. De AzureRM-module kan nog worden gebruikt en krijgt bugoplossingen tot ten minste december 2020.

Zie Inleiding tot de Azure PowerShell Az-module voor meer informatie over de Az-module en AzureRM-compatibiliteit. Zie Azure PowerShell installeren of Azure CLI installeren voor installatie-instructies.

DNS-alias in verbindingsreeks

Als u verbinding wilt maken met een logische SQL-server, kan een client zoals SQL Server Management Studio (SSMS) de naam van de DNS-alias opgeven in plaats van de werkelijke servernaam. In de volgende voorbeeldservertekenreeks vervangt de alias any-unique-alias-name het eerste door punt gescheiden knooppunt in de tekenreeks van de vier knooppuntserver:

<yourServer>.database.windows.net

Vereisten

Als u het powerShell-demoscript in dit artikel wilt uitvoeren, zijn de volgende vereisten van toepassing:

voorbeeld

Het volgende codevoorbeeld begint met het toewijzen van letterlijke waarden aan verschillende variabelen.

Als u de code wilt uitvoeren, bewerkt u de tijdelijke aanduidingen zodat deze overeenkomen met echte waarden in uw systeem.

De gebruikte cmdlets zijn het volgende:

Zie Azure PowerShell-module installeren om de module te installeren of te upgraden.

Gebruik Get-Module -ListAvailable Az in powershell_ise.exe om de versie te vinden.

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

Volgende stappen

Zie DNS-alias voor Azure SQL Database voor een volledige uitleg van de functie DNS-alias voor SQL Database.