61 lines
3.1 KiB
ReStructuredText
61 lines
3.1 KiB
ReStructuredText
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 <https://getcomposer.org/>`_ のウェブサイトを見てください。
|
|
|
|
.. note::
|
|
|
|
Phinx には少なくともPHP 5.4(またはそれ以降)が必要です。
|
|
|
|
Phinx をインストールするには、Composer を使用する必要があります。
|
|
|
|
.. code-block:: bash
|
|
|
|
php composer.phar require robmorgan/phinx
|
|
|
|
適切なパーミッションを持つ ``db/migrations`` 構造に従って、プロジェクト内にフォルダーを作成します。
|
|
これは、マイグレーションファイルが存在し、書き込み可能である場所です。
|
|
|
|
今、プロジェクト内から Phinx を実行できるようになりました。
|
|
|
|
.. code-block:: bash
|
|
|
|
vendor/bin/phinx init
|
|
|