Tip
Microsoft Fabric Data Warehouse は、将来のアーキテクチャ、組み込みの AI、および新機能を備えた、Data Lake 基盤上のエンタープライズ 規模のリレーショナル ウェアハウスです。 データ ウェアハウスを初めて使用する場合は、Fabric Data Warehouseから始めます。 既存の dedicated SQL プール ワークロードは、Fabric にアップグレードして、データ サイエンス、リアルタイム分析、レポートの新機能にアクセスできます。
- Fabric無料試用版を開始します。
- Fabric Data Warehouseの移行アシスタント。
Synapse ワークスペースにないスタンドアロン専用 SQL プールの場合は、カスタム ドメイン ネーム システム (DNS) サーバーを構成できます。 PowerShell と REST API では、論理 SQL サーバー名の DNS エイリアスの作成や管理を行う呼び出しを使用できます。
Azure SQL論理サーバーの DNS エイリアスをサポートするのは、スタンドアロン専用 SQL プール (旧 DW) のみです。 Azure Synapse ワークスペース内の専用 SQL プールの場合、DNS エイリアスは現在サポートされていません。 違いは何でしょうか。
サーバー名の代わりに DNS エイリアス を使用します。 クライアント プログラムで接続文字列内にエイリアスを使用することができます。 DNS エイリアスには、クライアント プログラムを別のサーバーにリダイレクトする変換レイヤーがあります。 このレイヤーによって、ユーザーはすべてのクライアントとその接続文字列を特定して編集するという面倒な作業が不要になっています。
DNS エイリアスの一般的な使用法には、次のようなものがあります。
- サーバーの覚えやすい名前を作成します。
- 初期開発時には、エイリアスでテストサーバーを参照できます。 アプリケーションの運用を開始するときに運用サーバーを参照するようエイリアスを変更する。 テストから運用環境への移行では、サーバーに接続するクライアントを変更する必要はありません。
- アプリケーションのデータベースが 1 つだけ別のサーバーに移動された場合、 エイリアスを変更するだけでよく、複数のクライアントの構成を変更する必要はありません。
インターネットのドメイン ネーム システム (DNS)
インターネットも DNS を使用しています。 この DNS によりフレンドリ名がサーバーの名前に変換されます。
1 つの DNS エイリアスを使用するシナリオ
システムを新しいサーバーに切り替える必要がある場合、 これまでは、すべてのクライアント プログラムのすべての接続文字列を検索して更新する必要があります。 ただし、接続文字列で DNS エイリアスを使用する場合は、エイリアス プロパティのみを更新する必要があります。
DNS エイリアス機能は、次のシナリオで役立ちます。
テストから運用への移行
クライアント プログラム開発の開始時に、接続文字列で DNS エイリアスを使用します。 エイリアスのプロパティがサーバーのテスト版を参照するよう設定します。
その後、新しいシステムの運用を開始する場合に、運用サーバーを参照するようにエイリアスのプロパティを更新することができます。 クライアント プログラムを変更する必要はありません。
複数のリージョンへの対応
ディザスター リカバリーによって、サーバーが別の地理的リージョンに移動される場合があります。 システムで DNS エイリアスを使用していれば、すべてのクライアントのすべての接続文字列を見つけて更新する必要がなくなります。 代わりに、エイリアスを更新して、専用 SQL プールをホストする新しいサーバーを参照できます。
DNS エイリアスのプロパティ
サーバーの各 DNS エイリアスには次のプロパティが適用されます。
- 一意の名前: 作成する各エイリアス名は、サーバー名の場合と同様、すべてのサーバーで一意である必要があります。
-
サーバーが必要です。 DNS エイリアスは、1 つのサーバーを正確に参照し、サーバーが既に存在している必要がある場合を除き、作成できません。 エイリアスを更新した場合も、常に 1 つの既存サーバーを正確に参照していなければなりません。
- サーバーを削除すると、そのサーバーを参照するすべての DNS エイリアスも Azure システムによって削除されます。
- どのリージョンにもバインドされていません。 DNS エイリアスはリージョンにバインドされません。 任意の DNS エイリアスを更新して、任意の地理的リージョンに存在するサーバーを参照できます。
- アクセス 許可: DNS エイリアスを管理するには、 サーバー共同作成者 以上のアクセス許可が必要です。 詳細については、Azure portal における Azure ロールベースのアクセス制御の基礎に関するページを参照してください。
DNS エイリアスの管理
REST API または PowerShell コマンドレットを使用して、DNS エイリアスをプログラムで管理します。
REST API を使用して DNS エイリアスを管理する
REST API の詳細については、「Azure SQL Database REST API」を参照してください。
PowerShell を使用して DNS エイリアスを管理する
REST API を呼び出す PowerShell コマンドレットを使用できます。 PowerShell のサンプルについては、「PowerShell for DNS Alias to Azure SQL Databaseを参照してください。
コード例で使用されているコマンドレットは次のとおりです。
- New-AzSqlServerDnsAlias: Azure SQL Database サービス システムに新しい DNS エイリアスを作成します。 このエイリアスはサーバー 1 を参照します。
- Get-AzSqlServerDnsAlias: サーバー 1 に割り当てられているすべての DNS エイリアスを取得して一覧表示します。
- Set-AzSqlServerDnsAlias: エイリアスによって参照されるように構成されているサーバー名を、サーバー 1 から サーバー 2 に変更します。
- Remove-AzSqlServerDnsAlias: エイリアスの名前を使用して、サーバー 2 から DNS エイリアスを削除します。
Note
この記事では、Azure と対話するために推奨される PowerShell モジュールである Azure Az PowerShell モジュールを使用します。 Az PowerShell モジュールの使用を開始するには、「Azure PowerShell をインストールする」を参照してください。 Az PowerShell モジュールに移行する方法については、「 Azure PowerShell を AzureRM から Az に移行する」を参照してください。
Important
PowerShell Azure Resource Manager (AzureRM) モジュールは、2024 年 2 月 29 日に非推奨になりました。 今後のすべての開発では、Az.Sql モジュールを使用する必要があります。 ユーザーは、引き続きサポートと更新を行うために、AzureRM から Az PowerShell モジュールに移行することをお勧めします。 AzureRM モジュールは維持またはサポートされなくなりました。 Az PowerShell モジュールと AzureRM モジュールのコマンドの引数は、ほぼ同じです。 互換性の詳細については、「新しい Az PowerShell モジュールの概要」を参照してください。
制限事項
現在、DNS エイリアスには次の制限があります。
-
最大 2 分の遅延: DNS エイリアスの更新または削除に最大 2 分かかります。
- ただし、遅延の有無にかかわらず、エイリアスは元のサーバーへのクライアント接続の参照を直ちに停止します。
- DNS の参照: 現時点では、特定の DNS エイリアスが参照しているサーバーを確認する正式な方法は、DNS の参照の実行だけです。
- DNS エイリアスには名前付けの制限事項があります。