phinx数据库脚本迁移工具
Phinx 可以使用 Composer 进行安装,Composer是一个PHP依赖管理工具。更多信息请访问 Composer 官网。
Phinx 至少需要PHP 5.4 或更新的版本
第一步:安装
composer require robmorgan/phinx
第二步:初始化
安装后,Phinx 现在可以在你的项目中执行初始化
php vendor/robmorgan/phinx/bin/phinx init
第三步:配置文件
phinx.yml
第四步:创建迁移 文件名驼峰命名
php vendor/robmorgan/phinx/bin/phinx create MyNewMigration
这将创建一个新的迁移脚本,格式是 YYYYMMDDHHMMSS_my_new_migration.php ,前14个字符是当前的timestamp,精确到秒。
如果你指定了多个脚本路径,将会提示你选择哪一个。
Phinx 自动创建的迁移脚本框架有一个方法:
<?php use Phinx\Migration\AbstractMigration; class MyNewMigration extends AbstractMigration { /** * Change Method. * * Write your reversible migrations using this method. * * More information on writing migrations is available here: * http://docs.phinx.org/en/latest/migrations.html#the-abstractmigration-class * * The following commands can be used in this method and Phinx will * automatically reverse them when rolling back: * * createTable * renameTable * addColumn * renameColumn * addIndex * addForeignKey * * Remember to call "create()" or "update()" and NOT "save()" when working * with the Table class. */ public function change() { //添加qaSource字段(qa来源) $wbrqa = $this->table("wbrqa"); if (!$wbrqa->hasColumn('qaSource')) { $wbrqa->addColumn("qaSource", "string", ['limit' => 30, 'null' => true, 'default' => '', 'comment' => 'qa来源'])->update(); } } //更改列属性[wbrqa: qid、aid更改字段属性为varchar 用户于存储mongoDb: _id、parentId] $wbrqa = $this->table("wbrqa"); $wbrqa->changeColumn('qId', 'string', ['limit' => 255, 'null' => true])->save(); $wbrqa->changeColumn('aId', 'string', ['limit' => 255, 'null' => true])->save(); $wbrqa->changeColumn('qUserId', 'string', ['limit' => 255, 'null' => true])->save(); $wbrqa = $this->table("wbrqa"); if (!$wbrqa->hasColumn('isDeleted')) { $wbrqa->addColumn("isDeleted", "integer", ['limit' => 2, 'null' => true, 'default' => '0', 'comment' => '是否删除'])->update(); } //建立索引 $wbrqa->hasIndex(['isDeleted', 'index_wbrqa_isDeleted']); }
第五步:执行脚本
php vendor/robmorgan/phinx/bin/phinx migrate -e localhost
注意点:
> php vendor/robmorgan/phinx/bin/phinx migrate -e *localhost*
此处的localhost为你本地的环境,也可以是线上环境,但是在使用之前,必须配好环境。
环境配置在下一文章详细说明。
链接地址:https://blog.csdn.net/weixin_39690767/article/details/80267801
原文地址https://blog.csdn.net/weixin_39690767/article/details/80267521
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
java注解用法详解——@SuppressWarnings
java中注解用法详解——@SuppressWarnings 一、前言 注释类型: 当你的编码可能存在警告时,比如安全警告,可以用它来消除。 api中是这样描述的: 指示应该在注释元素(以及包含在该注释元素中的所有程序元素)中取消显示指定的编译器警告。 注意,在给定元素中取消显示的警告集是所有包含元素中取消显示的警告的超集。 例如,如果注释一个类来取消显示某个警告,同时注释一个方法来取消显示另一个警告,那么将在此方法中同时取消显示这两个警告。 根据风格不同,程序员应该始终在最里层的嵌套元素上使用此注释,在那里使用才有效。 如果要在特定的方法中取消显示某个警告,则应该注释该方法而不是注释它的类。 在java编译过程中会出现很多警告,有很多是安全的,但是每次编译有很多警告影响我们对error的过滤和修改,我们可以在代码中加上@SuppressWarnings(“XXXX”) 来解决 例如:@SuppressWarnings("deprecation") 表示不显示使用了不赞成使用的类或方法时的警告。 再比如: 编码时我们总会发现如下:变量未被使用的警告提示 上述代码编译通过且可以运行,...
- 下一篇
phinx数据库脚本迁移环境配置
phinx数据库脚本迁移环境配置 环境: Phinx一个重要功能就是支持多个数据库环境。可以在本地开发环境使用迁移脚本,同样的脚本也可以在线上环境使用。环境数据在 dev下 environments: default_migration_table: phinxlog default_database: development localhost: adapter: mysql host: localhost name: dev user: root pass: 'root' port: 3306 charset: utf8 dev: adapter: mysql host: dev name: production_db user: root pass: '' port: 3306 charset: utf8 collation: utf8_unicode_ci phinx环境的配置文件在你的项目根目录下: 当你执行脚本命令对localhost数据库进行操作的时候: php vendor/robmorgan/phinx/bin/phinx migrate -e localhost 当...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8编译安装MySQL8.0.19
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- MySQL8.0.19开启GTID主从同步CentOS8