PowerShell per l'alias DNS per il database SQL di Azure
Si applica a: Database SQL di Azure Azure Synapse Analytics
Questo articolo fornisce uno script di PowerShell che illustra come gestire un alias DNS per SQL server che ospita il database SQL di Azure.
Nota
Questo articolo è stato aggiornato per usare il modulo Az di Azure PowerShell o l'interfaccia della riga di comando di Azure. È comunque possibile usare il modulo AzureRM, che continuerà a ricevere correzioni di bug almeno fino a dicembre 2020.
Per maggiori informazioni sul nuovo modulo Az e sulla compatibilità di AzureRM, vedere Introduzione al modulo Az di Azure PowerShell. Per istruzioni sull'installazione, vedere Installare Azure PowerShell o Installare l'interfaccia della riga di comando di Azure.
Alias DNS nella stringa di connessione
Per connettere un SQL server logico, un client come SQL Server Management Studio (SSMS) può specificare il nome dell'alias DNS al posto del nome reale del server. Nella stringa server di esempio seguente, l'alias any-unique-alias-name sostituisce il primo nodo delimitato da punto nella stringa server di quattro nodi:
<yourServer>.database.windows.net
Prerequisiti
Se si vuole eseguire lo script di PowerShell di esempio di questo articolo, sono necessari i prerequisiti seguenti:
- Per una sottoscrizione di Azure e un account, di prova gratuita, vedere Versione di prova Azure
- Due server
Esempio
Il seguente codice di esempio inizia assegnando valori letterali a diverse variabili.
Per eseguire il codice, modificare tutti i valori segnaposto sostituendoli con i valori reali del sistema.
I cmdlet usati sono i seguenti:
- New-AzSqlServerDNSAlias: crea un alias DNS nel sistema del servizio del database SQL di Azure. L'alias fa riferimento al server 1.
- Get-AzSqlServerDNSAlias: ottiene ed elenca tutti gli alias assegnati al server 1.
- Set-AzSqlServerDNSAlias: modifica il nome del server a cui l'alias è configurato per fare riferimento, dal server 1 al server 2.
- Remove-AzSqlServerDNSAlias: rimuove l'alias dal server 2, usando il nome dell'alias.
Per eseguire l'installazione o l'aggiornamento, vedere Installare il modulo di Azure PowerShell.
Usare Get-Module -ListAvailable Az
in powershell_ise.exe per trovare la versione.
$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;
Passaggi successivi
Per una spiegazione completa della funzionalità di alias DNS per il database SQL, vedere Alias DNS per il database SQL di Azure.