Phinx マイグレーション

Phinx は、データベースのマイグレーションを管理するためのスタンドアロンのコマンドラインツールです。 CakePHP の公式 Migrations プラグインはこのツールに基づいています。

Phinx は、あなたの PHP アプリケーションのデータベースマイグレーションを超簡単に管理できます。 5分以内に、Composer を使用して Phinx をインストールし、最初のデータベースマイグレーションを作成できます。 Phinx は、データベース ORM システムやアプリケーションフレームワークを使わずに、マイグレーションします。

はじめに

良い開発者は常に SCM システムを使ってコードをバージョン管理します。それでは、なぜ、 データベーススキーマについても同じことをしないのでしょうか?

Phinx は、開発者がデータベースを明確かつ簡潔な方法で変更および操作できるようにします。 これは手作業で SQL を書くことを避け、代わりに PHP コードを使用してマイグレーションを作成するための 強力な API を提供します。開発者は、好みの SCM システムを使用して、これらのマイグレーションを バージョン管理することができます。これにより、異なるデータベースシステム間で Phinx のマイグレーションを 移植可能にします。Phinx はどのマイグレーションが実行されたかを把握しているので、 データベースの状態については心配する必要はなく、より良いソフトウェアを構築することに 集中することができます。

ゴール

Phinx は以下の目標を念頭に置いて開発されました。

  • 最も普及しているデータベースベンダー間の可搬性。
  • PHP フレームワークに依存しない。
  • シンプルなインストール手順。
  • 使いやすいコマンドライン操作。
  • 他のさまざまな PHP ツール(Phing、PHPUnit)やウェブフレームワークとの統合。

インストール

Phinx は、PHP の依存関係管理のためのツールである Composer を使用してインストールする必要があります。 詳しくは Composer のウェブサイトを見てください。

注釈

Phinx には少なくともPHP 5.4(またはそれ以降)が必要です。

Phinx をインストールするには、Composer を使用する必要があります。

php composer.phar require robmorgan/phinx

適切なパーミッションを持つ db/migrations 構造に従って、プロジェクト内にフォルダーを作成します。 これは、マイグレーションファイルが存在し、書き込み可能である場所です。

今、プロジェクト内から Phinx を実行できるようになりました。

vendor/bin/phinx init