TL

Cloud Service

Azure Database for MySQL

オープンソース MySQL をフルマネージドで提供する PaaS。パッチ・バックアップ・高可用性を自動化し、AWS の RDS for MySQL に相当する。

基礎信頼性運用上の優秀性
最終更新: 2026-06-14公式ドキュメント ↗
TL;DR要点だけ先に
  • 1.MySQL を運用込みで貸すフルマネージド PaaS。
  • 2.パッチ・自動バックアップ・ゾーン冗長 HA を自動化。
  • 3.現行は柔軟な Flexible Server を選ぶのが基本。

解決する課題

  • MySQL サーバーの OS パッチ・マイナーバージョン更新・バックアップが重い → マネージドで自動化したい
  • 障害でデータベースが止まると困る → 組み込みの高可用性で可用性を上げたい
  • 既存の MySQL アプリ(WordPress、Laravel、各種 OSS など)をほぼ無改修でクラウドに移したい
  • 接続を絞りたい・運用コストを抑えたい → ネットワーク統合柔軟な停止/再開を使いたい

AWS でいう Amazon RDS for MySQL に相当するサービスで、MySQL エンジンの互換性を保ったまま運用を肩代わりするのが狙いです。

主要概念と用語

  • Flexible Server(フレキシブル サーバー): 現行の推奨デプロイ モデル。停止/開始、メンテナンス時間帯の指定、ゾーン冗長 HA、仮想ネットワーク統合などきめ細かい制御ができる
  • Single Server(シングル サーバー): 旧来のデプロイ モデル。新規構築では Flexible Server が推奨で、Single Server は段階的に役割を終える位置づけ
  • コンピューティング階層: Burstable(バースト可能、小規模/断続負荷向け)/General Purpose(汎用、本番の標準)/Business Critical(メモリ最適、高負荷向け)といった用途別の階層
  • ゾーン冗長 HA(高可用性): 別の可用性ゾーンにスタンバイを配置し、障害時に自動フェイルオーバーする構成。同一ゾーン内に置く構成も選べる
  • 読み取りレプリカ(Read Replica): 非同期レプリケーションで読み取り負荷を分散するためのレプリカ
  • ポイントインタイム リストア(PITR): 自動バックアップを使い、保持期間内の任意の時点へ復元する機能
  • メンテナンス ウィンドウ: パッチ適用などの計画メンテナンスを実施する曜日・時間帯を指定できる枠

仕様・制限・クォータ

  • 自動バックアップ: 定期的に自動取得され、保持期間内であれば PITR で任意時点へ復元できる。保持期間は一定の範囲内で設定可能
  • コンピューティングとストレージは分離してスケールでき、ストレージは拡張方向に変更しやすい一方で縮小には制約がある
  • 接続数の上限はコンピューティング サイズ(vCore とメモリ)に比例して決まる
  • 対応バージョンは MySQL の主要メジャー系列で、マイナー更新は計画メンテナンスで適用される
  • リージョン/サブスクリプションごとに vCore 数などのクォータがあり、必要に応じて引き上げ申請ができる

具体的な日数・数値・対応バージョンは変動するため、最新値は公式ドキュメントで確認してください。

内部の仕組み

  • ストレージとコンピューティングの分離: データは耐久性のあるストレージに保持され、コンピューティング ノードはその上で MySQL エンジンを動かす。サイズ変更時はコンピューティングを入れ替える形でスケールする
  • 高可用性: ゾーン冗長 HA を有効にすると、別ゾーンにスタンバイ サーバーを用意し、データを同期しながら待機させる。プライマリ障害時はスタンバイへ自動フェイルオーバーし、接続文字列は同じエンドポイントのまま切り替わる
  • 読み取りレプリカ: プライマリの変更を非同期でレプリカに反映する。非同期のためレプリカ側にはレプリケーション遅延が生じうる
  • メンテナンスとパッチ: マイナー更新や基盤のパッチはサービス側が計画メンテナンスとして適用する。アプリ側は**接続の再試行(リトライ)**を実装しておくと、フェイルオーバーや再起動時の瞬断に強くなる

設計パターン / ベストプラクティス

  • 新規構築は原則 Flexible Server を選ぶ。停止/開始やゾーン冗長 HA など制御範囲が広い
  • 本番では ゾーン冗長 HA を有効化し、可用性ゾーン障害に備える
  • 読み取りが多いワークロードは 読み取りレプリカで参照負荷を分散する(書き込みはプライマリに集約)
  • 接続は プライベート アクセス(仮想ネットワーク統合) を基本にし、パブリック アクセスは無効化するか最小限のファイアウォール規則に絞る
  • 接続のたびに新規接続を張らず、コネクション プーリングでハンドシェイクの負荷と接続数を抑える
  • メンテナンス ウィンドウを業務影響の少ない時間帯に設定する
Single Server ではなく Flexible Server を選ぶ

新規に作成するなら基本は Flexible Server です。停止/開始による課金抑制、ゾーン冗長 HA、メンテナンス時間帯の指定など、本番運用に必要な制御が揃っています。Single Server は旧来モデルのため、これから設計するワークロードでは Flexible Server を前提にしてください。

運用・監視

  • Azure Monitor / メトリクスで CPU・メモリ・ストレージ使用率・接続数・IOPS・レプリケーション遅延を監視する
  • しきい値を超えたらアラートで通知し、容量逼迫やレプリカ遅延を早期に検知する
  • スロークエリ ログや監査ログを有効化し、重いクエリや想定外のアクセスを把握する
  • バックアップからの**復元手順(PITR)**を事前にリハーサルし、目標復旧時点(RPO)を確認しておく
  • 計算サイズやストレージはオンラインで変更できる範囲が広いので、メトリクスを根拠に段階的にスケールする
読み取りレプリカは同期ではない

読み取りレプリカは非同期レプリケーションです。プライマリへの書き込み直後にレプリカを読むと、レプリケーション遅延により最新値が見えないことがあります。整合性が重要な読み取りはプライマリへ、許容できる参照系のみレプリカへ振り分けてください。

コスト

  • 課金は概ね コンピューティング(vCore 数 × 時間)+ ストレージ + バックアップ + ネットワーク(送信など) で構成される
  • 開発・検証など常時稼働が不要なサーバーは 停止/開始 でコンピューティング課金を抑えられる(停止中もストレージは課金される)
  • 断続的・小規模な負荷には Burstable 階層がコスト効率的
  • 長期に動かす本番は、前払いコミットによる予約(リザーブド)割引でコストを下げられる
  • 高可用性(スタンバイ)や読み取りレプリカは追加のコンピューティング/ストレージ費用が発生する点に注意する

実際の料金は変動するため、最新の料金は公式の料金ページで見積もってください。

セキュリティ

  • 保存データは保存時暗号化が既定で有効。鍵は Microsoft 管理鍵のほか、Key Vault による顧客管理鍵(BYOK)も選択できる
  • 転送時は TLS/SSL を強制でき、最小 TLS バージョンを指定できる
  • ネットワークは プライベート アクセス(仮想ネットワーク統合) を基本とし、パブリック アクセスはファイアウォール規則で最小化する
  • 認証は MySQL ネイティブ認証に加えて Microsoft Entra ID 認証に対応し、パスワード運用を減らせる
  • 接続文字列やパスワードはコードに直書きせず、Key Vault などのシークレット管理に保管する
アンチパターン

ファイアウォールで全 IP 範囲を許可したり、パブリック アクセスを開いたまま本番運用するのは NG です。プライベート アクセス+最小限のファイアウォール規則+TLS 強制で公開面を絞り、管理者パスワードをアプリのコードや設定ファイルに直書きしないでください。

Well-Architected の観点

  • 信頼性(Reliability): ゾーン冗長 HA で自動フェイルオーバーを構成し、PITR で時点復元できる状態にする。アプリ側に接続リトライを実装する
  • 運用(Operational Excellence): パッチとバックアップはサービスに任せ、メトリクスとアラートで状態を可視化する。メンテナンス ウィンドウを管理して計画停止の影響を制御する
  • セキュリティ: プライベート アクセス、TLS 強制、Entra ID 認証、顧客管理鍵で公開面と権限を絞る
  • パフォーマンス効率: 読み取りレプリカとコネクション プーリングで負荷を分散し、メトリクスを根拠に計算/ストレージをスケールする
  • コスト最適化: 停止/開始、Burstable 階層、予約割引でワークロードに合わせて費用を抑える

試験で問われるポイント

頻出
  • 新規構築では Flexible Server が推奨デプロイ モデル。Single Server は旧来モデルという位置づけを押さえる
  • ゾーン冗長 HA=別ゾーンの同期スタンバイへ自動フェイルオーバー。可用性ゾーン障害に対する高可用性の手段
  • 読み取りレプリカは非同期で、読み取りスケールアウト用途。整合性が必要な読み取りはプライマリへ
  • PITR(ポイントインタイム リストア) は自動バックアップを使い、保持期間内の任意時点へ復元する
  • 接続はプライベート アクセス(仮想ネットワーク統合) を基本にし、パブリック露出を避けるのがベストプラクティス
  • AWS では RDS for MySQL に相当するマネージド MySQL という対応関係

関連サービス・比較

観点Azure Database for MySQLAmazon RDS for MySQL
位置づけマネージドな MySQL(PaaS)マネージドな MySQL(各種エンジンの一つ)
推奨モデルFlexible Server標準の RDS インスタンス
高可用性ゾーン冗長 HA(自動フェイルオーバー)Multi-AZ(同期スタンバイ)
読み取りスケール読み取りレプリカ(非同期)リードレプリカ
バックアップ/復元自動バックアップ + PITR自動バックアップ + PITR
認証MySQL 認証 + Microsoft Entra IDMySQL 認証 + IAM データベース認証
停止/再開停止/開始で課金抑制インスタンス停止/開始に対応
PostgreSQL を使うなら

同様のマネージド OSS データベースとして Azure Database for PostgreSQL(Flexible Server) があり、考え方はほぼ共通です。エンジンの好みやアプリの要件で MySQL か PostgreSQL を選びます。

ハンズオン / CLI例

# リソースグループを作成
az group create --name demo-rg --location japaneast

# Flexible Server を作成(General Purpose、ゾーン冗長 HA を有効化)
az mysql flexible-server create \
  --name demo-mysql-0614 \
  --resource-group demo-rg \
  --location japaneast \
  --admin-user mysqladmin \
  --admin-password 'StrongP@ssw0rd!' \
  --tier GeneralPurpose \
  --high-availability ZoneRedundant \
  --public-access None \
  --version 8.0

# 読み取りレプリカを作成(読み取り負荷の分散)
az mysql flexible-server replica create \
  --replica-name demo-mysql-0614-rep \
  --resource-group demo-rg \
  --source-server demo-mysql-0614

# 開発用にサーバーを停止してコンピューティング課金を抑える
az mysql flexible-server stop \
  --name demo-mysql-0614 \
  --resource-group demo-rg

Azure Service

Azure Database for MySQLを実務で読む

TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。

解決すること

データベース

比較で見る軸

クラウド: Azure / カテゴリ: データベース / 難易度: basic

導入後に効く点

パッチ・自動バックアップ・ゾーン冗長 HA を自動化。

先に潰すリスク

サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。

数字・仕様の読み方
クラウド
Azure
カテゴリ
データベース
難易度
basic
関連資格
設計柱
reliability / operational

判断チェックリスト

  • 自社の用途が「データベース / reliability」に近いか確認する。
  • 強みである「MySQL を運用込みで貸すフルマネージド PaaS。」が本当に評価軸になるか確認する。
  • 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
  • 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
  • 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
  • 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。

次に確認する観点

データベースreliabilityoperational