다음을 통해 공유


Azure SQL Database의 DNS 별칭에 대한 PowerShell

적용 대상: Azure SQL Database Azure Synapse Analytics

이 문서에서는 Azure SQL Database를 호스팅하는 SQL Server에 대한 DNS 별칭을 관리하는 방법을 보여 주는 PowerShell 스크립트를 제공합니다.

참고 항목

이 문서는 새 Azure PowerShell Az 모듈 또는 Azure CLI를 사용하도록 업데이트되었습니다. AzureRM 모듈은 적어도 2020년 12월까지 버그 수정을 수신할 예정이므로 계속 사용하셔도 됩니다.

Az 모듈 및 AzureRM 호환성에 대한 자세한 내용은 Azure PowerShell Az 모듈 소개를 참조하세요. 설치 지침은 Azure PowerShell 설치 또는 Azure CLI 설치를 참조하세요.

연결 문자열의 DNS 별칭

논리 SQL Server를 연결하기 위해 SSMS(SQL Server Management Studio)와 같은 클라이언트는 실제 서버 이름 대신 DNS 별칭 이름을 제공할 수 있습니다. 다음 예제의 서버 문자열에서 별칭 any-unique-alias-name은 4개 노드 서버 문자열에서 점으로 구분된 첫 번째 노드를 대신합니다.

<yourServer>.database.windows.net

필수 조건

이 문서에 제공된 데모 PowerShell 스크립트를 실행하려면 다음 필수 구성 요소가 적용됩니다.

  • Azure 구독 및 계정, 무료 평가판은 Azure 평가판을 참조하세요.
  • 서버2대

예시

다음 코드 예제에서는 여러 변수에 리터럴 값을 할당하여 시작합니다.

코드를 실행하려면 자리 표시자 값을 편집하여 시스템의 실제 값과 일치합니다.

사용된 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;

다음 단계

SQL Database의 DNS 별칭 기능에 대한 전체 설명은 Azure SQL 데이터베이스에 대한 DNS 별칭을 참조하세요.