IT用語: MySQLとは|世界最多採用のオープンソースリレーショナルデータベース
WordPress・ECサイト・SNSに広く使われるMySQL(MariaDB)の特徴・ストレージエンジン・チューニングを解説。
MySQLとは
MySQLは、Oracle社が開発するオープンソースのリレーショナルデータベース管理システム(RDBMS)です。WordPress・Drupal・Joomlaなど多くのCMSのデフォルトDBとして採用されており、Webアプリ分野では世界で最も広く使われているRDBMSの一つです。
ストレージエンジン
MySQLの特徴的な仕組みが「ストレージエンジン」の選択です。
| エンジン | 特徴 |
|---|---|
| InnoDB(デフォルト) | トランザクション・外部キー・行レベルロック対応 |
| MyISAM | テーブルレベルロック・トランザクション非対応・高速SELECT |
| MEMORY | インメモリテーブル(再起動でデータ消滅) |
現在はInnoDBがデフォルトかつ推奨。MyISAMは事実上レガシーです。
MariaDBとの関係
MariaDBはMySQLのフォーク(派生版)で、OracleによるMySQL買収後にコミュニティが中心となって開発。MySQLとほぼ互換性があり、RHEL系Linuxのデフォルトとして採用されています。
AWS Aurora MySQLとの違い
Amazon Auroraはディスク層を分散ストレージに置き換えたMySQLの改良版で、標準MySQLの最大5倍の書き込みスループットを実現します。ただしオンプレミスのMySQLとはバイナリ互換ではない点に注意が必要です。
関連する用語 (データベース)
全23件を見るIT用語: データベースレプリケーションとは|読み取り分散と冗長化の仕組み
プライマリDBの変更をレプリカに同期するレプリケーションの仕組み・同期/非同期の違い・活用パターンを解説。
シャーディング(データベース水平分割)
データを複数のサーバー(シャード)に水平分割して分散させるDBスケーリング手法。1台のサーバーに収まらない大規模データの処理に使われる。モンゴDBやCassandraが得意とする。
データベースインデックス(索引)
データベースの検索速度を向上させるためのデータ構造。B木・ハッシュ・全文検索等の種類があり、適切なインデックス設計はクエリパフォーマンスを劇的に改善する。
IT用語: データベーストランザクションとは|ACID特性で保証するデータ整合性
DBの一連の操作をまとめて原子的に扱うトランザクションのACID特性(原子性・一貫性・独立性・持続性)を解説。
データベースマイグレーション
データベースのスキーマ(テーブル構造)変更をバージョン管理し、順序立てて適用する仕組み。Prisma Migrate・Flyway・Liquibaseが代表的なツール。
NoSQL(非リレーショナルデータベース)
固定スキーマを持たない非リレーショナル型データベースの総称。ドキュメント型・キーバリュー型・カラム型・グラフ型などがあり、水平スケーリングと柔軟なデータ構造が特徴。