Azure Database for MySQLフレキシブル サーバーは、Microsoft Cloudでフル マネージドの実稼働対応リレーショナル データベース サービスです。 これは、 MySQL Community Edition (GPLv2 ライセンスで利用可能) データベース エンジン、バージョン 5.7、8.0、および 8.4 に基づいています。 このサービスは、データベース管理機能と構成設定に対してよりきめ細かい制御と柔軟性を提供します。 さまざまな Azure リージョンで一般提供されています。
Azure Database for MySQL フレキシブル サーバーでは、次を提供します:
- ゾーン冗長およびローカル冗長の高可用性 (HA)。
- メンテナンス期間をスケジュールする機能。
- 自動バックアップと最大 35 日間のポイントインタイム リストアを使用したデータ保護。
- サービスをセキュリティで保護し、最新の状態に保つための、基盤となるハードウェア、オペレーティング システム、データベース エンジンに対する自動修正とメンテナンス。
- 包括的な従量課金制の価格設定を使用した、予測可能なパフォーマンス。
- 秒単位のエラスティック スケーリング。
- 低コストのバースト可能なコンピューティング層と、サーバーを停止/起動する機能によるコスト最適化コントロール。
- 保存および移動中の機密データを保護するエンタープライズ レベルのセキュリティ、コンプライアンス、プライバシー。
- 大規模なデプロイの管理を簡素化するための監視と自動化。
- サポートを受ける複数の方法。
これらの機能には追加コストや管理はほとんど必要ありません。 そのため、時間とリソースを仮想マシンとインフラストラクチャの管理に奪われることなく、迅速なアプリ開発や、製品化に要する時間の短縮に専念することができます。 加えて、選択したオープンソース ツールとプラットフォームを使用してアプリケーションの開発を続けることができるので、新たにスキルを身に付けなくてもビジネスが求めるスピードと効率を実現することができます。
フレキシブル サーバー Azure Database for MySQLは予約インスタンスもサポートします。 運用ワークロードに予測可能なコンピューティング容量要件がある場合は、予約インスタンスを使用してコストを節約できます。
フレキシブル サーバー Azure Database for MySQL最新の更新プログラムについては、「Azure Database for MySQLの新機能」を参照してください。
アーキテクチャの概要
フレキシブル サーバーのデプロイ オプションには、データベース ワークロードをサポートするためのコンピューティング容量とメモリ容量が異なる 3 つのコンピューティング レベルが用意されています。
- バースト可能レベルは、低コストの開発ワークロードや、フル コンピューティング容量を継続的に必要としない低コンカレンシーのワークロードに最適です。
- General Purpose レベルとメモリ最適化レベルは、高いコンカレンシー、スケール、予測可能なパフォーマンスを必要とする運用環境のワークロードに適しています。
最初のアプリをバースト可能レベルで低コストで構築し、後から実際のソリューションのニーズに応じて、スケールを調整することができます。 詳細については、Azure Database for MySQL フレキシブル サーバーのサービス レベルを参照してください。
フレキシブル サーバー アーキテクチャを使用する場合は、1 つの可用性ゾーン内または複数の可用性ゾーンにまたがる高可用性を選択できます。 フレキシブル サーバーは、以下の点で最適です。
- バックアップ、高可用性、セキュリティ、監視などのデータベース管理のオーバーヘッドの低減、容易なデプロイ、簡素化されたスケーリング。
- より優れた制御とカスタマイズを備えた、MySQL のコミュニティ バージョンを必要とするアプリケーション開発。
- ローカル冗長またはゾーン冗長の高可用性と、マネージド メンテナンス ウィンドウを備えた本番ワークロード。
- 簡素化された開発エクスペリエンス。
12 か月間の無料プラン
Azure無料アカウントを使用すると、Azure Database for MySQLフレキシブル サーバーを 12 か月間無料で使用できます。 オファーには、月間の利用制限として以下が含まれます
- バースト可能な Standard_B1ms 仮想マシンの使用時間は、最大 750 時間。 これはデータベース インスタンスを毎月十分に継続実行できるだけの時間です。
- 32 GB のストレージと 32 GB のバックアップ ストレージ。
このオファーを使用して、フレキシブル サーバー用Azureデータベース アプリケーションを開発してデプロイします。 Azure無料アカウントを使用してフレキシブル サーバー Azure Database for MySQL無料で作成して使用する方法については、「Azure無料アカウントにフレキシブル サーバー Azure Database for MySQL展開する」を参照してください。
可用性ゾーン内および可用性ゾーン間での高可用性
Azure Database for MySQLフレキシブル サーバーを使用すると、自動フェールオーバーを使用して高可用性を構成できます。 この高可用性ソリューションは、障害が原因でコミットされたデータが失われないようにし、アプリケーションの全体的なアップタイムを向上するのに役立ちます。
高可用性を構成すると、フレキシブル サーバーによってスタンバイ レプリカが自動的にプロビジョニングされて管理されます。 プライマリ レプリカとセカンダリ レプリカのプロビジョニングされたコンピューティングとストレージの料金が発生します。
高可用性のアーキテクチャ モデルには、2 種類の選択肢があります。
ゾーン冗長の高可用性: このオプションは完全な分離を提供し、複数の可用性ゾーンにわたるインフラストラクチャの冗長性を構成する必要があります。 可用性ゾーン内のインフラストラクチャ障害に対して最高レベルの可用性を提供し、可用性ゾーン間の待機時間を許容できる場合に適しています。
複数の可用性ゾーンとゾーン冗長 Premium ファイル共有をサポートするAzure リージョンのサブセットは、ゾーン冗長 HA を提供します。
ローカル冗長高可用性: このオプションでは、プライマリ サーバーとスタンバイ サーバーの両方が同じ可用性ゾーンにあるため、ネットワーク待機時間が短いインフラストラクチャ冗長性が提供されます。 ゾーンをまたいでアプリケーションの冗長性を構成することなく、高可用性を提供します。
フレキシブル サーバー インスタンスが使用可能なすべてのリージョンで、ローカル冗長 HA Azure Database for MySQL有効にすることができます。
詳細については、Azure Database for MySQL での高可用性を参照してください。
管理されたメンテナンスウィンドウによるパッチの自動適用
このサービスでは、基になるハードウェア、ペレーティング システム、およびデータベース エンジンの自動修正が実行されます。 修正プログラムの適用プロセスには、セキュリティ更新プログラムとソフトウェア更新プログラムが含まれます。 MySQL エンジンの場合、マイナー バージョンのアップグレードも計画メンテナンス リリースに含まれています。
パッチ適用のスケジュールをシステム管理として構成することも、独自のカスタム スケジュールを定義することもできます。 メンテナンス スケジュールの実行時にパッチが適用されるため、サーバーの再起動が必要になる場合があります。 カスタム スケジュールを使用すると、修正プログラムの適用サイクルを予測可能にし、ビジネスに最小限の影響を与えるメンテナンス期間を選択できます。 サービスは、毎月のリリース スケジュールに従って、継続的インテグレーションとリリースを行っています。
詳細については、
自動バックアップ
Azure Database for MySQLフレキシブル サーバー サービスは、サーバー バックアップを自動的に作成し、ユーザーが構成したローカル冗長ストレージまたは geo 冗長ストレージに格納します。 バックアップを使用して、バックアップ保有期間内の任意の時点にサーバーを復元します。
1 日間から 35 日間の保有期間で設定できます。 既定は 7 日です。 すべてのバックアップが、AES 256 ビット暗号化によって暗号化されます。
詳細については、「backup and restore in Azure Database for MySQL」を参照してください。
ネットワークの分離
フレキシブル サーバー Azure Database for MySQL接続するには、次の 2 つのネットワーク オプションがあります。
プライベート アクセス (仮想ネットワーク統合):Azure Database for MySQLフレキシブル サーバーをAzure仮想ネットワークにデプロイします。 仮想ネットワーク内のリソースでは、プライベート IP アドレスを通した通信が可能です。
次の機能が必要な場合は、仮想ネットワーク統合オプションを選択します。
- プライベート IP アドレスを使用して、同じ仮想ネットワーク内のAzure リソースから Azure Database for MySQL フレキシブル サーバーに接続します。
- 仮想プライベート ネットワーク (VPN) またはAzure ExpressRouteを使用して、Azure以外のリソースから Azure Database for MySQL フレキシブル サーバーに接続します。
- パブリックエンドポイントの使用は避けてください。
パブリック アクセス (許可された IP アドレス):パブリック エンドポイントを使用してAzure Database for MySQLフレキシブル サーバーをデプロイします。 パブリック エンドポイントは、パブリックに解決できる DNS アドレスです。 サーバーへのアクセス許可を付与する IP アドレスの範囲を選択します。 このような種類のアクセス許可は、ファイアウォール規則と呼ばれます。
詳細については、フレキシブル サーバーの接続とネットワークの概念Azure Database for MySQL参照してください。
パフォーマンスとスケールの迅速な調整
月あたり数ドルを支払って小規模なデータベースで最初のアプリを構築し、後から実際のソリューションのニーズに応じて、スケールをシームレスに調整することができます。 ストレージのスケーリングはオンラインであり、フレキシブル サーバーのストレージ自動拡張機能Azure Database for MySQLサポートしています。
フレキシブル サーバー Azure Database for MySQL使用すると、ストレージに関係なく、1 秒あたりの追加の入出力操作 (IOPS) を無料の IOPS 制限を超えてプロビジョニングできます。 この機能を使用すると、ワークロードの要件に基づいてプロビジョニングされる IOPS の数をいつでも増減できます。 動的なスケーラビリティにより、データベースは変化の激しいリソース要件に透過的に対処することができます。 消費したリソースについてのみ料金を支払います。
詳細については、「Azure Database for MySQL フレキシブル サーバーのサービス レベル」を参照してください。
読み取りレプリカを使用して、読み取りワークロードをスケールアウトする機能
MySQL は、インターネット規模の Web およびモバイル アプリケーションを実行するための人気のあるデータベース エンジンの 1 つです。 Microsoftお客様は、オンライン教育、ビデオ ストリーミング、デジタル決済ソリューション、eコマース プラットフォーム、ゲーム サービス、ニュース ポータル、政府および医療の Web サイトに使用します。 Web アプリケーションやモバイル アプリケーションのトラフィック増加に対応して、これらのサービスを提供し、スケーリングする必要があります。
アプリケーションは通常、Javaまたは PHP で開発され、次のいずれかになります。
- Azure仮想マシン スケール セットで実行するように移行するか、Azure App Serviceで実行するように移行するようにしました。
Azure Kubernetes Service (AKS)
基になるインフラストラクチャとして App Service または AKS を使用する仮想マシン スケール セットは、新しい仮想マシンを瞬時にプロビジョニングし、アプリケーションのステートレス コンポーネントをレプリケートして要求に対応することで、アプリケーションのスケーリングを簡略化します。 しかし、多くの場合、データベースは負荷の中心となるステートフル コンポーネントとしてボトルネックになります。
読み取りレプリカ機能を使用すると、Azure Database for MySQLフレキシブル サーバーから読み取り専用サーバーにデータをレプリケートできます。 ソース サーバーから最大で 10 個のレプリカにレプリケートできます。
レプリカは、MySQL エンジンのネイティブなバイナリ ログ (binlog) ファイルの位置ベースのレプリケーション テクノロジにより非同期的に更新されます。 ProxySQL などのロード バランサー プロキシ ソリューションを使用して、アプリケーションのリファクタリング コストを発生させることなく、アプリケーションのワークロードを読み取りレプリカにシームレスにスケールアウトすることができます。
詳細については、「read replicas in Azure Database for MySQL」を参照してください。
データインレプリケーションによるハイブリッドまたはマルチクラウドのデータ同期
データイン レプリケーション機能を使用して、外部 MySQL サーバーからフレキシブル サーバー Azure Database for MySQLデータを同期します。 外部サーバーは、オンプレミス、仮想マシン、または他のクラウド プロバイダーによってホストされているデータベース サービス内に存在できます。
データイン レプリケーションは、バイナリ ログ (binlog) ファイル内の位置に基づいて行われます。 この機能を使用する主なシナリオを次に示します。
- ハイブリッド データ同期
- マルチクラウド同期
詳細については、「Azure Database for MySQL フレキシブル サーバーにデータをレプリケートする」を参照してください。
オンデマンド サーバーの停止と開始
フレキシブル サーバー Azure Database for MySQL使用すると、必要に応じてサーバーを停止して起動し、コストを最適化できます。 コンピューティング レベルの課金は、サーバーが停止するとすぐに停止します。 この機能は、開発中、テスト中、期限付きの予測可能な運用ワークロードの実行中に大幅にコストを削減するのに役立ちます。 サーバーは、より早く再起動しない限り、30 日間停止状態のままになります。
詳細については、フレキシブル サーバーでのサーバーの概念Azure Database for MySQL参照してください。
エンタープライズ グレードのセキュリティ、コンプライアンス、プライバシー
フレキシブル サーバー Azure Database for MySQL、保存データのストレージ暗号化に FIPS 140-2 検証済み暗号化モジュールを使用します。 クエリの実行中に作成されるデータ (バックアップを含む) と一時ファイルは暗号化されます。
このサービスでは、Azure ストレージ暗号化に含まれる AES 256 ビット暗号が使用され、キーはシステム管理 (既定) にすることができます。 保存データの暗号化には、Azure キー コンテナーまたはマネージド ハードウェア セキュリティ モジュールに格納されているカスタマー マネージド キーを使用することもできます。 詳細については、「Azure Database for MySQL のカスタマー マネージド キーを使用した
Azure Database for MySQLフレキシブル サーバーでは、トランスポート層セキュリティ (TLS) が既定で適用され、移動中のデータが暗号化されます。 このサービスでは、TLS 1.2 (既定) と TLS 1.3 (MySQL 8.0 以降で推奨) を使用する暗号化接続がサポートされています。 TLS 1.0 および TLS 1.1 を使用するすべての受信接続は拒否されます TLS の強制を無効にするには、 require_secure_transport サーバー パラメーターを設定してから、サーバーの最小 tls_version 値を設定します。 詳細については、「暗号化された接続を使用してフレキシブル サーバー Azure Database for MySQL接続する」を参照してください。
フレキシブル サーバー Azure Database for MySQL、仮想ネットワーク統合を通じてサーバーへの完全なプライベート アクセスを許可します。 仮想ネットワーク内のサーバーに到達して接続できるのは、プライベート IP アドレスを介した場合のみです。 仮想ネットワーク統合を使用すると、パブリック アクセスを拒否し、パブリック エンドポイントを介してサーバーに到達することはできません。 詳細については、フレキシブル サーバーの接続とネットワークの概念Azure Database for MySQL参照してください。
監視とアラート
Azure Database for MySQLフレキシブル サーバーには、パフォーマンスの監視とアラート機能が組み込まれています。 すべてのAzureメトリックの頻度は 1 分です。 各メトリクスは、過去30日間のデータを保持します。
メトリックにアラートを構成できます。 フレキシブル サーバー Azure Database for MySQL、ホスト サーバーメトリックを公開してリソース使用率を監視し、低速クエリ ログを構成できるようにします。 これらのツールを使用すると、ワークロードをすばやく最適化し、最適なパフォーマンスが得られるようにサーバーを構成することができます。
フレキシブル サーバー Azure Database for MySQLでは、Azure Monitor ブックを使用して、低速クエリと監査ログ データを視覚化できます。 ブックを使用すると、データを分析し、Azure ポータル内で豊富なビジュアル レポートを作成するための柔軟なキャンバスが得られます。 Azure Database for MySQLフレキシブル サーバーには、サーバーの概要、チュートリアル: フレキシブル サーバーを使用した監査ログの構成、およびチュートリアル: Azure Database for MySQL Azure Database for MySQLのパフォーマンス分析情報のクエリを実行するという 3 つのブック テンプレートが用意されています。
Query Performance Insight ワークブックは、次のような情報を提供することで、データベースのパフォーマンスのトラブルシューティングに費やす時間を短縮するのに役立ちます。
- 実行時間が長いクエリの上位とその傾向。
- クエリの詳細: クエリ テキストと、クエリ時間の最小値、最大値、平均値、標準偏差を含む実行履歴を表示します。
- リソース使用率 (CPU、メモリ、ストレージ)。
さらに、Percona Monitoring and Management などのコミュニティの監視ツールを使用し、Azure Database for MySQL フレキシブル サーバーと統合できます。
詳細については、「Azure Database for MySQL フレキシブル サーバーを監視する」を参照してください。
Migration
フレキシブル サーバー Azure Database for MySQL、コミュニティ バージョンの MySQL を実行します。 この設計の選択により、アプリケーションの完全な互換性が確保され、MySQL エンジンで開発された既存のアプリケーションを柔軟なサーバーに移行するために最小限のリファクタリング コストAzure Database for MySQL必要になります。 フレキシブル サーバー Azure Database for MySQL移行するには、次のオプションを使用します。
オフライン移行
ソースとAzureの間のネットワーク帯域幅が良好な場合 (高速 ExpressRoute 接続など) にAzure Database Migration Serviceを使用します。 詳しい手順については、「
mydumper ツールと myloader ツールで圧縮設定を使用して、低速ネットワーク (パブリック インターネットなど) 上でデータを効率的に移動します。 詳しい手順については、 mydumper/myloader を使用して大規模なデータベースを Azure Database for MySQL に移行する方法を参照してください。
オンラインの移行または最小限のダウンタイムでの移行
オンラインまたは最小限のダウンタイムの移行の場合は、 mydumper/myloader などのコミュニティ ツールと データイン レプリケーション を使用して、切り捨て中に柔軟なサーバーを外部の MySQL ソースと同期することを検討してください。 詳細については、「Azure Database for MySQL - 単一サーバーをAzure Database for MySQLに移行する - オープン ソース ツールを使用したフレキシブル サーバー」を参照してください。
Azure リージョン
Azureでワークロードを実行する利点の 1 つは、そのグローバルなリーチです。 フレキシブル サーバー Azure Database for MySQL現在、次のAzure リージョンで使用できます。
Note
ゾーン冗長 HA の場合、リージョン間で動的に変化する可能性があるゾーン容量の制約により、Azure ポータルのエクスペリエンスで最新のサポート状態を確認します。 可用性は、サブスクリプションの特定のゾーンでの現在の容量とクォータの割り当てに基づいて変更される可能性があります。
| Region | Availability | ローカル冗長 HA | ゾーン冗長 HA | geo 冗長バックアップ |
|---|---|---|---|---|
| オーストラリア中部 | Yes | Yes | No | No |
| オーストラリア東部 | Yes | Yes | Yes | Yes |
| オーストラリア南東部 | Yes | Yes | No | Yes |
| オーストリア東部 | Yes | Yes | No | Yes |
| ベルギー中部 | Yes | Yes | No | Yes |
| ブラジル南部 | Yes | Yes | Yes | Yes |
| カナダ中部 | Yes | Yes | Yes | Yes |
| カナダ東部 | Yes | Yes | No | Yes |
| インド中部 | Yes | Yes | Yes | Yes |
| 米国中部 | Yes | Yes | Yes | Yes |
| チリ中部 | Yes | Yes | Yes | Yes |
| 中国東部 2 | Yes | Yes | No | Yes |
| 中国東部 3 | Yes | Yes | No | Yes |
| 中国北部 2 | Yes | Yes | No | Yes |
| 中国北部 3 | Yes | Yes | Yes | Yes |
| デンマーク東部 | Yes | Yes | Yes | Yes |
| 東アジア (香港特別行政区) | Yes | Yes | Yes | Yes |
| 米国東部 | Yes | Yes | Yes | Yes |
| 米国東部 2 | Yes | Yes | Yes | Yes |
| フランス中部 | Yes | Yes | Yes | Yes |
| フランス南部 | Yes | Yes | No | Yes |
| ドイツ中西部 | Yes | Yes | Yes | Yes |
| ドイツ北部 | Yes | Yes | No | Yes |
| インドネシア中部 | Yes | Yes | No | No |
| イスラエル中部 | Yes | Yes | Yes | No |
| イタリア北部 | Yes | Yes | Yes | No |
| 東日本 | Yes | Yes | Yes | Yes |
| 西日本 | Yes | Yes | Yes | Yes |
| JIO インド西部 | Yes | Yes | No | No |
| 韓国中部 | Yes | Yes | Yes | Yes |
| 韓国南部 | Yes | Yes | No | Yes |
| マレーシア西部 | Yes | Yes | Yes | Yes |
| メキシコ中部 | Yes | Yes | Yes | No |
| ニュージーランド北部 | Yes | Yes | Yes | No |
| 米国中北部 | Yes | Yes | Yes | Yes |
| 北ヨーロッパ | Yes | Yes | Yes | Yes |
| ノルウェー東部 | Yes | Yes | Yes | Yes |
| ノルウェー西部 | Yes | Yes | No | No |
| ポーランド中部 | Yes | Yes | Yes | No |
| カタール中部 | Yes | Yes | Yes | No |
| 南アフリカ北部 | Yes | Yes | Yes | Yes |
| 南アフリカ西部 | Yes | Yes | No | Yes |
| 米国中南部 | Yes | Yes | Yes | Yes |
| インド南部 | Yes | Yes | No | Yes |
| 東南アジア | Yes | Yes | Yes | Yes |
| スペイン中部 | Yes | Yes | Yes | Yes |
| スウェーデン中部 | Yes | Yes | Yes | No |
| スイス北部 | Yes | Yes | Yes | Yes |
| スイス西部 | Yes | Yes | No | Yes |
| 台湾北部 | Yes | Yes | No | No |
| 台湾北西部 | Yes | Yes | No | No |
| アラブ首長国連邦中部 | Yes | Yes | No | Yes |
| アラブ首長国連邦北部 | Yes | Yes | Yes | Yes |
| 英国南部 | Yes | Yes | Yes | Yes |
| 英国西部 | Yes | Yes | No | Yes |
| アメリカ政府 バージニア州 | Yes | Yes | Yes | No |
| USGov アリゾナ | Yes | Yes | Yes | Yes |
| USGov テキサス | Yes | Yes | No | Yes |
| 米国中西部 | Yes | Yes | No | Yes |
| 西ヨーロッパ | Yes | Yes | Yes | Yes |
| 米国西部 | Yes | Yes | No | Yes |
| 米国西部 2 | Yes | Yes | Yes | Yes |
| 米国西部 3 | Yes | Yes | Yes | Yes |
フィードバックとサポート
Azure Database for MySQL フレキシブル サーバーの利用に関する質問や提案については、以下の問い合わせ先を参照してください。
- Azure サポートに連絡するには、Azure ポータルで要求を送信します。
- ご意見や新機能に関するご要望については、コミュニティ フィードバックにご投稿ください。