PowerShell pro DNS alias k Azure SQL Database
Se vztahuje na:Azure SQL Database
Azure Synapse Analytics
Tento článek poskytuje modul Az pro Azure PowerShell nebo skripty Azure CLI, které ukazují, jak můžete spravovat alias DNS pro logický server Azure SQL, který hostuje Azure SQL Database.
Alias DNS v připojovacím řetězci
Pokud chcete připojit logický sql server, klient, jako je SQL Server Management Studio (SSMS), může místo názvu skutečného serveru zadat alias DNS název. V následujícím příkladu řetězce serveru nahradí alias any-unique-alias-name první uzel oddělený tečkou v řetězci serveru se čtyřmi uzly:
<yourServer>.database.windows.net
Požadavky
Pokud chcete spustit ukázkový skript PowerShellu uvedený v tomto článku, platí následující požadavky:
- Předplatné a účet Azure pro bezplatnou zkušební verzi najdete v části Zkušební verze Azure.
- Dva logické servery Azure SQL
- Nainstalujte modul Azure PowerShellu nebo Azure CLI.
Příklad
Následující příklad kódu začíná přiřazením hodnot literálů k několika proměnným.
Pokud chcete kód spustit, upravte zástupné hodnoty tak, aby odpovídaly skutečným hodnotám ve vašem systému.
Použité rutiny jsou následující:
- New-AzSqlServerDNSAlias: Vytvoří alias DNS v systému služby Azure SQL Database. Alias odkazuje na server 1.
- Get-AzSqlServerDNSAlias: Získejte a vypíšete všechny aliasy přiřazené k serveru 1.
- Set-AzSqlServerDNSAlias: Upraví název serveru, na který má alias odkazovat, od serveru 1 na server 2.
- Remove-AzSqlServerDNSAlias: Odeberte alias ze serveru 2 pomocí názvu aliasu.
Pokud chcete provést instalaci nebo upgrade, přečtěte si téma Instalace modulu Azure PowerShell.
Použijte Get-Module -ListAvailable Az
v powershell_ise.exe k nalezení verze.
$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;