共用方式為


適用於 Azure SQL 資料庫 之 DNS 別名的 PowerShell

適用於:Azure SQL 資料庫Azure Synapse Analytics

本文提供用於 Azure SQL 邏輯伺服器 的 Azure PowerShell Az 模組或 Azure CLI 腳本,示範如何管理 Azure SQL Database 的 DNS 別名。

連接字串中的 DNS 別名

若要連線 邏輯 SQL Server,SQL Server Management Studio (SSMS) 之類的用戶端可以提供 DNS 別名 名稱,而不是真正的伺服器名稱。 在下列範例伺服器字串中,別名any-unique-alias-name 會取代四個節點伺服器字串中的第一個點分隔節點:

<yourServer>.database.windows.net

必要條件

如果您想要執行本文所提供的示範 PowerShell 文稿,適用下列必要條件:

範例

下列程式代碼範例會先將常值指派給數個變數。

若要執行程式碼,請編輯佔位元值,以符合系統中的實際值。

使用的 cmdlet 如下:

如果您需要安裝或升級,請參閱安裝 Azure PowerShell 模組

在 powershell_ise.exe 中使用 Get-Module -ListAvailable Az,以尋找版本。

$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;
  • Azure SQL Database DNS 別名