TL

Cloud Service

Azure Database for MariaDB

MariaDB を運用込みで貸したフルマネージド PaaS。ただし既に提供終了し、現在は Azure Database for MySQL フレキシブルサーバーへの移行が推奨される。AWS の RDS 系に相当した位置づけ。

基礎信頼性運用上の優秀性
最終更新: 2026-06-28公式ドキュメント ↗
TL;DR要点だけ先に
  • 1.MariaDB を運用込みで貸したフルマネージド PaaS だが、既に提供を終了している。
  • 2.新規作成は不可。移行先は Azure Database for MySQL フレキシブルサーバーが推奨。
  • 3.設計思想は MySQL のマネージドサービスとほぼ共通で、概念はそのまま読み替えられる。

解決する課題

  • MariaDB サーバーの OS パッチ・マイナーバージョン更新・バックアップが重い → マネージドで自動化したかった
  • 障害でデータベースが止まると困る → 組み込みの高可用性とバックアップで可用性を上げたかった
  • 既存の MariaDB アプリ(各種 OSS、CMS など)をほぼ無改修でクラウドに移したかった

このサービスは MariaDB エンジンの互換性を保ったまま運用を肩代わりするマネージド PaaS でした。ただし現在は提供を終了しており、新規構築には使えません。これから MariaDB 互換のワークロードを Azure で動かす場合は、後述の移行先を前提に設計してください。

このサービスは提供を終了しています

Azure Database for MariaDB は退役(リタイア)済みで、新規サーバーの作成はできません。Microsoft は移行先として Azure Database for MySQL フレキシブルサーバーを推奨しています。MariaDB と MySQL は共通の起源を持ち多くのワークロードで移行は比較的容易ですが、バージョン互換や一部機能の差異があるため、移行は計画的に進めてください。最新の退役スケジュールと移行手順は必ず公式情報で確認してください。

主要概念と用語

  • マネージド MariaDB(PaaS): MariaDB エンジンをサービス側が運用し、ユーザーはデータベースとアプリに集中できる提供形態
  • コンピューティング階層: 用途別の階層構成。小規模・断続負荷向けのバースト可能な階層、本番の標準となる汎用階層、高負荷向けのメモリ最適階層といった分け方
  • 自動バックアップ: 定期的に自動取得されるバックアップ。保持期間内であれば任意時点へ復元できる
  • ポイントインタイムリストア(PITR): 自動バックアップを使い、保持期間内の任意の時点へ復元する機能
  • 読み取りレプリカ: 非同期レプリケーションで読み取り負荷を分散するためのレプリカ
  • 退役(リタイア): サービスの提供を終了するライフサイクル上の段階。新規作成停止 → 既存サーバーの停止という流れで進む
  • 移行先: 退役に伴う推奨の移行ターゲット。本サービスでは Azure Database for MySQL フレキシブルサーバー

仕様・制限・クォータ

  • 新規作成は不可: 退役済みのため、新しい MariaDB サーバーは作成できない。これが最大の制約
  • 対応していた MariaDB バージョンは主要なメジャー系列に限られ、最新のメジャーバージョンには追随していなかった
  • 自動バックアップと PITR: 保持期間内であれば任意時点への復元に対応していた。保持期間は一定の範囲内で設定可能だった
  • 接続数の上限はコンピューティングサイズ(メモリ)に比例して決まる構成だった
  • リージョンやサブスクリプションごとにクォータがあり、必要に応じて引き上げ申請する形だった

具体的な対応バージョン・保持日数・退役の正確な日付は変動・確定情報のため、最新値は公式ドキュメントで確認してください。

内部の仕組み

  • ストレージとコンピューティングの分離: データは耐久性のあるストレージに保持され、コンピューティングノードがその上で MariaDB エンジンを動かす。サイズ変更はコンピューティングを入れ替える形でスケールした
  • 高可用性とバックアップ: 基盤側でデータを冗長化し、自動バックアップを定期取得して PITR を可能にしていた
  • 読み取りレプリカ: プライマリの変更を非同期でレプリカに反映する。非同期のためレプリケーション遅延が生じうる
  • メンテナンスとパッチ: マイナー更新や基盤のパッチはサービス側が適用していた。アプリ側は**接続の再試行(リトライ)**を実装しておくと、再起動時の瞬断に強くなる

設計思想は Azure Database for MySQL のマネージドサービスとほぼ共通です。MariaDB から MySQL への移行を考える際、これらの概念はそのまま読み替えられます。

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

  • 新規構築では本サービスを選ばない。Azure Database for MySQL フレキシブルサーバーを前提に設計する
  • 既存の MariaDB サーバーを運用中なら、退役前に移行計画を立てて実行する。検証環境で互換性を先に確認する
  • 移行時はバージョン互換(MariaDB と MySQL のメジャー対応関係)を確認し、SQL や関数の差異を洗い出す
  • 接続はプライベートアクセスを基本にし、パブリックアクセスは無効化するかファイアウォール規則を最小限に絞る
  • 接続のたびに新規接続を張らず、コネクションプーリングでハンドシェイクの負荷と接続数を抑える
移行はダンプ&リストアか DMS で

小~中規模のデータベースはダンプ&リストア(論理バックアップの取得と読み込み)でシンプルに移せます。ダウンタイムを最小化したい大規模データベースでは Azure Database Migration Service(DMS)やレプリケーションを使ったオンライン移行を検討します。レプリケーション遅延がゼロになった時点でカットオーバーするのが基本的な流れです。

運用・監視

  • 既存サーバーを退役まで運用する場合も、Azure Monitor / メトリクスで CPU・メモリ・ストレージ使用率・接続数・レプリケーション遅延を監視する
  • しきい値を超えたらアラートで通知し、容量逼迫やレプリカ遅延を早期に検知する
  • スロークエリログや監査ログを有効化し、重いクエリや想定外のアクセスを把握する
  • バックアップからの**復元手順(PITR)**を事前にリハーサルし、目標復旧時点(RPO)を確認しておく
  • 最優先の運用タスクは移行の完了。退役後はサーバーが停止・削除され、データへアクセスできなくなる点を運用計画に織り込む
読み取りレプリカは同期ではない

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

コスト

  • 課金は概ね コンピューティング + ストレージ + バックアップ + ネットワーク(送信など) で構成されていた
  • 断続的・小規模な負荷にはバースト可能な階層がコスト効率的だった
  • 高可用性や読み取りレプリカは追加のコンピューティング/ストレージ費用が発生した
  • コスト面でも、移行先の Azure Database for MySQL フレキシブルサーバーは停止/開始による課金抑制など、より柔軟な節約手段を備える

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

セキュリティ

  • 保存データは保存時暗号化が既定で有効だった
  • 転送時は TLS/SSL を強制でき、最小 TLS バージョンを指定できた
  • ネットワークはプライベートアクセスを基本とし、パブリックアクセスはファイアウォール規則で最小化する
  • 接続文字列やパスワードはコードに直書きせず、Key Vault などのシークレット管理に保管する
退役後の放置は重大なリスク

退役後に未移行のサーバーを放置すると、データへのアクセス手段を失うだけでなく、サポートやセキュリティ更新も受けられません。退役前にデータを移行・退避し、移行先で TLS 強制・プライベートアクセス・最小権限を再設定してください。ファイアウォールで全 IP 範囲を許可したまま運用するのも NG です。

関連サービス・比較

最も関連の深いサービスは移行先である Azure Database for MySQL フレキシブルサーバーです。両者を比較します。

観点Azure Database for MariaDBAzure Database for MySQL フレキシブルサーバー
提供状況退役済み(新規作成不可)現行の推奨サービス
エンジンMariaDB 互換MySQL 互換
位置づけ旧来のマネージド OSS DBMariaDB からの推奨移行先
高可用性基盤側で冗長化ゾーン冗長 HA(自動フェイルオーバー)
読み取りスケール読み取りレプリカ(非同期)読み取りレプリカ(非同期)
停止/再開限定的停止/開始で課金抑制
新規採用不可推奨
MariaDB 互換が必須なら

アプリが MariaDB 固有の機能に強く依存している場合は、移行前に MySQL との差異を検証してください。差異が大きく移行が難しいときは、仮想マシン上に自前で MariaDB を構築する(IaaS)選択肢もありますが、その場合はパッチ・バックアップ・高可用性を自分で運用する負担が戻る点に注意します。

ハンズオン / CLI例

# 注意: Azure Database for MariaDB は退役済みのため、新規作成はできません。
# 既存サーバーの確認と、移行先(MySQL フレキシブルサーバー)作成の例を示します。

# 既存の MariaDB サーバーを一覧表示(移行対象の棚卸し)
az mariadb server list \
  --resource-group demo-rg \
  --output table

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

# 移行先: MySQL フレキシブルサーバーを作成(ゾーン冗長 HA を有効化)
az mysql flexible-server create \
  --name demo-mysql-target \
  --resource-group demo-rg \
  --location japaneast \
  --admin-user mysqladmin \
  --admin-password 'StrongP@ssw0rd!' \
  --tier GeneralPurpose \
  --high-availability ZoneRedundant \
  --public-access None \
  --version 8.0

# 以降はダンプ&リストア、または Database Migration Service でデータを移行する

Azure Service

Azure Database for MariaDBを実務で読む

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

解決すること

データベース

比較で見る軸

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

導入後に効く点

新規作成は不可。移行先は Azure Database for MySQL フレキシブルサーバーが推奨。

先に潰すリスク

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

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

判断チェックリスト

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

次に確認する観点

データベースreliabilityoperational