データベースマイグレーション
データベースのスキーマ(テーブル構造)変更をバージョン管理し、順序立てて適用する仕組み。Prisma Migrate・Flyway・Liquibaseが代表的なツール。
データベースマイグレーションとは?
データベースマイグレーションは、データベースのスキーマ(テーブル構造・カラム定義等)の変更をバージョン管理されたスクリプトとして管理し、順序立てて環境に適用する仕組みです。コードの変更とDB変更を同期させる重要な開発プロセスです。
なぜマイグレーションが必要か?
チーム開発では複数の開発者がDBを変更します。「誰がどの変更を加えたか」「本番環境にどこまで適用済みか」を管理しないと整合性が崩れます。
マイグレーションの流れ
1. マイグレーションファイルを作成(例: 20260408_add_phone_to_users.sql)
2. ローカルで適用・テスト
3. PR・コードレビュー
4. ステージング環境で適用・確認
5. 本番環境で適用
代表的なマイグレーションツール
| ツール | 対象言語/FW | 特徴 |
|---|---|---|
| Prisma Migrate | TypeScript/Prisma | スキーマファイルから自動生成 |
| Flyway | Java・多言語 | SQLベース・シンプル |
| Liquibase | 多言語 | XML/YAML/SQL対応 |
| Alembic | Python/SQLAlchemy | Python標準 |
| Rails Migration | Ruby on Rails | フレームワーク標準 |
ロールバック
マイグレーション失敗時のロールバック(元に戻す)スクリプトも合わせて用意することが推奨されます(ダウンマイグレーション)。
まとめ
マイグレーションは「本番DBを直接変更する」という危険な運用を防ぐための安全弁です。チーム開発では必ず導入してください。
関連する用語 (データベース)
全23件を見るIT用語: Redisとは|高速インメモリデータストアの仕組みと活用パターン
メモリ上にデータを保存し高速なキャッシュ・セッション管理・Pub/Subを実現するRedisの仕組みと主要データ型を解説。
IT用語: データベースレプリケーションとは|読み取り分散と冗長化の仕組み
プライマリDBの変更をレプリカに同期するレプリケーションの仕組み・同期/非同期の違い・活用パターンを解説。
IT用語: PostgreSQLとは|拡張性と標準準拠で選ばれるオープンソースRDBMS
高度な機能・拡張性・SQL標準への準拠で知られるオープンソースのリレーショナルデータベースPostgreSQLを解説。
IT用語: MySQLとは|世界最多採用のオープンソースリレーショナルデータベース
WordPress・ECサイト・SNSに広く使われるMySQL(MariaDB)の特徴・ストレージエンジン・チューニングを解説。
IT用語: シャーディングとは|大規模DBを水平分割してスケールアウトする手法
ユーザーIDや地域などのキーでデータを複数DBに分割するシャーディングの仕組みとデメリットを解説。
MySQL(マイSQL)
オープンソースのリレーショナルデータベース管理システム。WordPressをはじめ多くのWebアプリに採用され、読み取りパフォーマンスが高く導入が容易なRDBMSの定番。