Azure SQL Database のコピー


Microsoft Japan Data Platform Tech Sales Team

大林裕明

新年あけましておめでとうござます!

ブログメンバー一同、皆様に本年も有益な情報をお届けしたいと思っておりますのでよろしくお願いいたします。

さて年初ブログの内容ですが、いろいろと役に立つ Azure SQL Database のコピーについて書きたいと思います。

データベースのコピーが必要なケース

  1. データ分析のために北米やヨーロッパ、東南アジアから日本にあるデータベースを検索しているが、ネットワーク遅延によりレスポンスが遅いため、各リージョンにデータベースのコピーを置きたい。
  2. 障害や災害発生時にビジネスを継続するための切り替え先としてデータベースのコピーが必要。
  3. 開発や検証のために本番環境に近いデータベースのコピーを作成したい。

どれもコピーですが、それぞれコピー先に求められる要件が違うと思います。

1.データ分析のために各リージョンに置くコピー

1つ目のデータ分析のレスポンスのためにデータベースをエンドユーザーから距離の近い場所にコピーを置きたいという要件では、geo レプリケーションを利用することで 4つの読み取り専用のセカンダリを好きなリージョンに配置することができます。

geo

【参考URL】Azure Portal を使用して Azure SQL Database のアクティブ geo レプリケーションを構成してフェールオーバーを開始する

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-geo-replication-portal

【作成方法】

Azure Portal から geo レプリケーションを設定します。

下記の例では Japan  West がプライマリとして、West US にセカンダリを作成していきます。

ターゲットリージョンで West USを選択します。

geo

セカンダリの種類は「読み取り可能」になります。

指定したリージョンにサーバーがない場合は新しい「サーバーの作成」を選択してサーバーを作成します。

価格レベルは、プライマリと同じにする必要はありません。

ただし、価格レベルにより使用可能な最大ストレージのサイズが違いますので注意してください。

image

設定してOKを押せば出来上がりです。

image

West US リージョンに読み取り専用のデータベースが作成されました。

こちらはもちろん自動的にプライマリデータベースとは同期が取られています。

接続する際は West US のサーバー名を接続文字列に指定をします。

2. 障害や災害時に切り替えて利用するためのコピー

2つ目の障害や災害時に切り替えて利用されるコピーの場合、自動フェールオーバー機能を利用することで障害時のレプリカへの切り替えやアプリケーションから接続を抽象化することでレプリカに切り替わった際の接続文字列の変更する必要がなくなります。

failover

【参考URL】フェールオーバー グループとアクティブ geo レプリケーション

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-geo-replication-overview

【作成方法】

フェールオーバーグループの作成は Azure Portal からできます。

下記は Japan West をプライマリ、Japan East をセカンダリとしてすでに geo レプリケーションを構成しています。

image

地図の上に「このデータベースをフェールオーバー グループに追加して、データベースのレプリケーション、接続、フェールオーバーを自動的に管理できるようになりました。」とメッセージが出ていますのでこちらをクリックします。

image

Azure SQL Database に接続するときは接続文字列のサーバー名に「サーバー名.database.windows.net 」を指定します。

しかしサーバー名だとセカンダリに切り替わった時には接続先をセカンダリのサーバー名に変更する必要があります。

フェールオーバーグループを設定していれば、「フェールオーバーグループ名.database.windows.net 」を指定することで、Azure SQL Database でフェールオーバーが発生しても接続文字列を書き換えなくても、切り替わったセカンダリサーバーに再接続してくれます。

3. 開発や検証のためのコピー

3つ目は開発や検証のためにコピーを作成したいという要件ですが、こちらはデータベースへのテーブルやデータの追加、更新、削除などデータベースへの変更が行われるので本番環境とは別の環境を用意する必要があります。

こちらはコピーを作成後、元データベースとの同期はしません。

copy

【参考URL】Azure SQL Database のコピー

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-copy

【作成方法】

Azure Portal から作成します。

Azure SQL Database の概要ページのタブにある「コピー」をクリックします。

image

データベース名と対象サーバー、価格レベルを設定してOKを押せば出来上がりです。

image

コピーされたデータベースに接続して開発、検証を行ってください。

いかがでしたでしょうか?

今までコピー作成に苦労されてきたと思いますが、Azure SQL Database では Azure Portal から簡単に作成することができます。

ぜひ活用してください!!

Comments (0)

Skip to main content