製品プロフィール

MySQL

MySQL AB(現 Oracle) / 1995年登場

世界で最も普及した OSS リレーショナル DB。Web アプリ(LAMP)の定番で、速くて扱いやすく情報も豊富。

3つの要点
  1. 世界で最も普及した OSS リレーショナル DB。
  2. Web アプリ(LAMP)の定番で速く情報も豊富。
  3. 一般的な Web 用途なら無難な第一候補。

基本情報

仕様と立ち位置

MySQL のロゴ
製品・技術の概要MySQL世界で最も普及した OSS リレーショナル DB。Web アプリ(LAMP)の定番で、速くて扱いやすく情報も豊富。
種別
リレーショナルRDB)
クエリ
SQL
ライセンス
オープンソースGPL)+ 商用
登場
1995年
最大の強み
普及度 No.1情報が豊富Web アプリで実績多数
代表的な用途
Web アプリのバックエンドCMS / EC サイト / 一般的な業務 DB

選定ガイド

選定ポイント

採用する理由と、事前に受け入れるべきトレードオフを分けて確認します。

採用に向く条件

選ぶ理由

  1. 普及度 No.1・情報が豊富
  2. Web アプリで実績多数
  3. 読み取り中心で高速

事前に確認する条件

考慮すべき点

  1. 高度な SQL 機能は PostgreSQL に一歩
  2. ストレージエンジンの違いに注意

詳しい解説

もっと詳しく

どんな DB か

MySQL は 1995 年に登場したオープンソースのリレーショナルデータベースです。開発元は MySQL AB で、その後 Sun を経て 現在は Oracle が保有しています。ライセンスは GPL の OSS 版と商用版 の二本立てです。

世界で最も広く使われている定番の Web 向け RDB」が一言での説明です。動作実績が膨大で、トラブル時に参照できる情報が非常に多いのが実務上の強みです。

横にスクロール

MySQLがSQLを解析して統計から実行計画を選び、InnoDBのバッファプールとB-tree索引で行を読み、更新時はundo、redo、binary logを整合させて確定し、dirty pageの後書き、クラッシュ復旧、レプリカ適用へ進む流れ
MySQLの性能は、オプティマイザが選んだ走査方法とInnoDBバッファプールのI/Oを分けて確認します。更新ではundoで旧版を保ち、redoとbinary logを内部二段階で整合させてからCOMMITを返します。複製は非同期遅延を前提に、GTID位置と旧主系の隔離を確認して切り替えます。

特徴・仕組み

  • Web アプリの定番。Linux・Apache・MySQL・PHP/Perl からなる LAMP スタックの一角として普及した。
  • 読み取り中心の処理で高速にチューニングしやすく、シンプルな構成で素早く立ち上げられる。
  • 情報が豊富。書籍・記事・Q&A が大量にあり、初学者でも詰まりにくい。
  • ストレージエンジンを選べる。標準は InnoDB で、トランザクションや外部キーに対応する。
-- テーブル作成時にエンジンを明示する例
CREATE TABLE users (id INT PRIMARY KEY) ENGINE=InnoDB;

得意・不得意

得意なのは、読み取りが多い一般的な Web サービスや、枯れた構成で安定運用したいケースです。普及度ゆえに、ホスティングやツールの対応も手厚いです。

不得意な面として、高度な SQL 機能では PostgreSQL に一歩譲る部分があります。また ストレージエンジンの違い(InnoDB か否か)でトランザクションや外部キーの挙動が変わるため、選択を誤ると整合性に影響します。

いつ選ぶか(他との違い)

まず動く Web の DB が欲しい、情報量と実績を重視」なら MySQL が無難です。LAMP 文化圏のフレームワークやレンタルサーバーとの相性も良好です。

複雑なクエリや拡張性を重視するなら PostgreSQL、サーバー不要の組込みなら SQLite、という比較で位置づけると選びやすくなります。なお互換実装として MariaDB という派生もあります。

実装・運用の視点

MySQLを実務で読む

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

解決すること

Web アプリのバックエンド

比較で見る軸

種別: リレーショナル(RDB) / クエリ: SQL / ライセンス: オープンソース(GPL)+ 商用

導入後に効く点

Web アプリで実績多数

先に潰すリスク

高度な SQL 機能は PostgreSQL に一歩

数字・仕様の読み方
種別
リレーショナル(RDB)
クエリ
SQL
ライセンス
オープンソース(GPL)+ 商用
登場
1995年

判断チェックリスト

  • 自社の用途が「Web アプリのバックエンド / CMS / EC サイト」に近いか確認する。
  • 強みである「普及度 No.1・情報が豊富」が本当に評価軸になるか確認する。
  • 注意点の「高度な SQL 機能は PostgreSQL に一歩」を運用で吸収できるか確認する。
  • 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
  • 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
  • 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。

次に確認する観点

Web アプリのバックエンドCMS / EC サイト一般的な業務 DB

向いている用途

こんな用途に向く

Web アプリのバックエンドCMS / EC サイト一般的な業務 DB
公式サイト