Udostępnij za pośrednictwem


Program PowerShell dla aliasu DNS w usłudze Azure SQL Database

Dotyczy: Azure SQL Database Azure Synapse Analytics

Ten artykuł zawiera skrypt programu PowerShell, który pokazuje, jak można zarządzać aliasem DNS dla serwera SQL hostujący usługę Azure SQL Database.

Uwaga

Ten artykuł został zaktualizowany, aby użyć modułu Az programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure. Nadal możesz używać modułu AzureRM, który będzie nadal otrzymywać poprawki błędów do co najmniej grudnia 2020 r.

Aby dowiedzieć się więcej na temat modułu Az i zgodności modułu AzureRM, zobacz Wprowadzenie do modułu Az programu Azure PowerShell. Aby uzyskać instrukcje dotyczące instalacji, zobacz Instalowanie programu Azure PowerShell lub instalowanie interfejsu wiersza polecenia platformy Azure.

Alias DNS w parametry połączenia

Aby połączyć logiczny serwer SQL, klient, taki jak SQL Server Management Studio (SSMS), może podać nazwę aliasu DNS zamiast prawdziwej nazwy serwera. W poniższym przykładowym ciągu serwera alias any-unique-alias-name zastępuje pierwszy węzeł rozdzielany kropką w ciągu serwera czterech węzłów:

<yourServer>.database.windows.net

Wymagania wstępne

Jeśli chcesz uruchomić demonstracyjny skrypt programu PowerShell podany w tym artykule, obowiązują następujące wymagania wstępne:

Przykład

Poniższy przykład kodu rozpoczyna się od przypisania wartości literału do kilku zmiennych.

Aby uruchomić kod, zmodyfikuj wartości symboli zastępczych, aby dopasować rzeczywiste wartości w systemie.

Używane polecenia cmdlet są następujące:

Aby przeprowadzić instalację lub uaktualnienie, zobacz Instalowanie modułu Azure PowerShell.

Użyj Get-Module -ListAvailable Az polecenia w powershell_ise.exe, aby znaleźć wersję.

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

Następne kroki

Aby uzyskać pełne wyjaśnienie funkcji aliasu DNS dla usługi SQL Database, zobacz alias DNS dla usługi Azure SQL Database.