Phinx数据库迁移脚本的使用

官方网站:https://phinx.org

phinx是通过composer安装完成的。

这里有composer下载安装Phinx的官方文档:https://packagist.org/packages/robmorgan/phinx

当然,也可以按照下面步骤进行安装

下面我们开始安装phinx:

1.首先安装composer

curl -sS https://getcomposer.org/installer | php

2.进行安装phinx

composer require robmorgan/phinx

我们可以看到会出现下面提示翻译过来是  搜索一个包

解决方法  

robmorgan/phinx



第二个提示是 输入需要的版本约束(或留空以使用最新版本)  回车直接跳过即可

完成后出现一个vendor目录  phinx下载成功

3.进行phinx初始化

php vendor/robmorgan/phinx/bin/phinx init       //生成phinx.yml文件

4.配置phinx.yml文件

原yml文件

paths:
    migrations: '%%PHINX_CONFIG_DIR%%/db/migrations'
    seeds: '%%PHINX_CONFIG_DIR%%/db/seeds'

environments:
    default_migration_table: phinxlog
    default_database: development
    production:
        adapter: mysql
        host: localhost
        name: production_db
        user: root
        pass: ''
        port: 3306
        charset: utf8

    development:
        adapter: mysql
        host: localhost
        name: development_db
        user: root
        pass: ''
        port: 3306
        charset: utf8

    testing:
        adapter: mysql
        host: localhost
        name: testing_db
        user: root
        pass: ''
        port: 3306
        charset: utf8

version_order: creation

修改后的yml文件

paths:
    migrations: '%%PHINX_CONFIG_DIR%%/db/migrations'
    seeds: '%%PHINX_CONFIG_DIR%%/db/seeds'

environments:
    default_migration_table: phinxlog
    default_database: development
    production:
        adapter: mysql
        host: 127.0.0.1
        name: vote
        user: root
        pass: '你的密码'
        port: 3306
        charset: utf8

#    development:
#        adapter: mysql
#        host: localhost
#        name: development_db
#        user: root
#        pass: ''
#        port: 3306
#        charset: utf8
#
#    testing:
#        adapter: mysql
#        host: localhost
#        name: testing_db
#        user: root
#        pass: ''
#        port: 3306
#        charset: utf8

version_order: creation

5.手动创建migrations和seeds文件夹

在phinx.yml为根目录创建migrations和seeds文件夹

6.创建迁移 文件名驼峰命名

php vendor/robmorgan/phinx/bin/phinx create MyNewMigration

创建迁移成功

7.常用方法和详解

table(“test”) //指明要操作的表名称
addColumn(“字段名”,[“limit”=>10,’default’=>”“,’null’=>true,”comment”=>’add column’]) //指明字段名 后面是字段属性配置
addTimestamp() // 创建表默认帮你加上 created_at updated_at 字段
create() //确认执行
change() //默认phinx会执行此方法 执行迁移
up() //向上迁移 当前最新版本
down() //向下迁移 回滚 

等等具体详细使用请参考Phinx官方文档

8.执行脚本

php vendor/robmorgan/phinx/bin/phinx migrate -e localhost

Phinx官方文档:https://tsy12321.gitbooks.io/phinx-doc/content/configuration.html


猜你喜欢

转载自blog.csdn.net/darthis/article/details/80968954