PowerShell pour les alias DNS sur Azure SQL Database
S’applique à : Azure SQL Database Azure Synapse Analytics
Cet article fournit un script PowerShell qui montre comment gérer un alias DNS du serveur SQL qui héberge votre instance d'Azure SQL Database.
Notes
Cet article a été mis à jour pour tenir compte de l’utilisation du module Az d’Azure PowerShell ou d’Azure CLI. Vous pouvez toujours utiliser le module AzureRM, qui continue à recevoir des correctifs de bogues jusqu’à au moins décembre 2020.
Pour en savoir plus sur le module Az et la compatibilité avec AzureRM, consultez Présentation du module Az d’Azure PowerShell. Pour obtenir des instructions d’installation, consultez Installer Azure PowerShell ou Installer Azure CLI.
Alias DNS dans la chaîne de connexion
Pour connecter un serveur SQL logique, un client tel que SQL Server Management Studio (SSMS) peut fournir le nom d'alias DNS au lieu du vrai nom du serveur. Dans l’exemple de chaîne de serveur suivant, l’alias any-unique-alias-name remplace le premier nœud délimité par un point dans la chaîne de serveur à quatre nœuds :
<yourServer>.database.windows.net
Prérequis
Pour exécuter le script PowerShell de démonstration proposé dans cet article, les prérequis suivants s’appliquent :
- Un abonnement et un compte Azure, pour un essai gratuit, consultez les Versions d’essai Azure
- Deux serveurs
Exemple
L’exemple de code suivant commence par affecter des valeurs littérales à plusieurs variables.
Pour exécuter le code, modifiez les valeurs des espaces réservés pour les faire correspondre aux valeurs réelles de votre système.
Les applets de commande utilisées sont les suivantes :
- New-AzSqlServerDNSAlias : crée un alias DNS dans le système de service Azure SQL Database. L'alias fait référence au serveur 1.
- Get-AzSqlServerDNSAlias : permet d'obtenir et de répertorier tous les alias attribués au serveur 1.
- Set-AzSqlServerDNSAlias : modifie le nom du serveur que l’alias doit référencer, de serveur 1 à serveur 2.
- Remove-AzSqlServerDNSAlias : supprime l'alias du serveur 2 en utilisant le nom de l'alias.
Pour installer ou mettre à niveau, consultez Installer le module Azure PowerShell.
Utilisez Get-Module -ListAvailable Az
dans powershell_ise.exe pour trouver la version.
$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;
Étapes suivantes
Pour obtenir une description complète de la fonctionnalité d'alias DNS de SQL Database, consultez Alias DNS pour Azure SQL Database.