【でーたべーすまいぐれーしょん】
データベースマイグレーション とは?
最終更新:
💡 DBスキーマの「バージョン管理」
データベースの構造やデータを、ある状態から別の状態へ移すこと。アプリ開発では、テーブルやカラムなどの変更手順をファイルで管理し、順に適用するスキーママイグレーションをよく指す。
📌 このページのポイント
手動でALTER TABLEするのと何が違うの?
SQLを手動で実行すること自体が禁止というわけではないよ。ただ、各自が別々に変更すると環境が食い違いやすい。変更手順をファイルに残してGitなどで共有し、順序や適用履歴を管理するのがスキーママイグレーションの利点なんだ。
ファイルがあれば、いつでも元に戻せるの?
本番で気をつけることは?
DBの種類や操作によって、ロックの強さや実行時間が違うよ。本番に近いデータ量で手順を試し、稼働中のアプリが新旧の構造を扱えるか確認する。ツールを使うだけで無停止になるとは限らないんだ。
スキーマ変更とデータ移行はどう関係するの?
まとめ:ざっくりこれだけ覚えればOK!
「DBマイグレーション」って出てきたら「DBの構造やデータを計画的に移行すること」と思えばだいたいOK!
📖 おまけ:英語の意味
「Database Migration」 = データベース移行・移植
💬 Migration(移行)。スキーマをある状態から次の状態に「移行」させるよ