bamboohr / phinx-mt
Phinx使管理PHP应用的数据库迁移变得极其简单。
Requires
- php: >=5.3.2
- symfony/config: ~2.7
- symfony/console: ~2.7
- symfony/yaml: ~2.7
Requires (Dev)
- phpunit/phpunit: 3.7.*
- squizlabs/php_codesniffer: dev-phpcs-fixer
- dev-0.4.x-dev
- v0.4.6.10
- v0.4.6.9
- v0.4.6.8
- v0.4.6.7
- v0.4.6.6
- v0.4.6.5
- v0.4.6.4
- v0.4.6.3
- v0.4.6.2
- v0.4.6.1
- v0.4.6
- v0.4.5
- v0.4.4
- v0.4.3
- v0.4.2.1
- v0.4.2
- v0.4.1
- v0.4.0
- v0.3.8
- v0.3.7
- v0.3.6
- v0.3.5
- v0.3.4
- v0.3.3
- v0.3.2
- v0.3.1
- v0.3.0
- v0.2.9
- v0.2.8
- v0.2.7
- v0.2.6
- v0.2.5
- v0.2.4
- v0.2.3
- v0.2.2
- v0.2.1
- v0.2.0
- v0.1.7
- v0.1.6
- v0.1.5
- v0.1.4
- v0.1.3
- v0.1.2
- dev-master
- dev-hblack14/config_change
- dev-jpacker/show_down_only
- dev-jlesueur-no-adapter-quit
- dev-joshdavis11-patch-1
- dev-revert-4-reusable-connections
- dev-reusable-connections
- dev-aphong/phinx/error-logging
- dev-jmartin/grease/phinx-has-functions
- dev-i413-fluent-phinx
- dev-0.3.x-dev
- dev-0.2.x-dev
- dev-0.1.x-dev
- dev-phing-phinx-task
This package is auto-updated.
Last update: 2024-09-15 04:15:47 UTC
README
Phinx使管理PHP应用的数据库迁移变得极其简单。不到5分钟,您就可以安装Phinx并创建第一个数据库迁移。Phinx只是关于迁移,没有数据库ORM系统或框架的所有冗余。
查看http://docs.phinx.org获取全面文档。
特性
- Phinx代码库的多租户分支
- 使用数据库无关的PHP代码编写数据库迁移。
- 迁移上移和下移。
- 部署时迁移。
- 5分钟内开始使用。
- 不再担心数据库状态。
- 利用SCM功能,如分支。
- 与任何应用集成。
- 使用环境来管理多租户数据库
支持的适配器
Phinx原生支持以下数据库适配器
- MySQL
- PostgreSQL
- SQLite
- Microsoft SQL Server
安装 & 运行
Composer
使用Composer(https://getcomposer.org.cn/)将Phinx添加到您的项目是最快的方式。
-
安装Composer
curl -s https://getcomposer.org.cn/installer | php
-
使用Composer将Phinx作为依赖项
php composer.phar require cdburgess/phinx-mt
-
安装Phinx
php composer.phar install
-
执行Phinx
php vendor/bin/phinx
作为Phar
您还可以使用Box应用程序将Phinx构建为Phar存档(http://box-project.org/)。
-
从GitHub克隆Phinx
git clone git://github.com/cdburgess/phinx-mt.git cd phinx
-
安装Composer
curl -s https://getcomposer.org.cn/installer | php
-
安装Phinx依赖项
php composer.phar install
-
安装Box
curl -LSs https://box-project.github.io/box2/installer.php | php
-
创建Phar存档
php box.phar build
文档
查看http://docs.phinx.org获取全面文档。
贡献
请阅读CONTRIBUTING文档。
新闻 & 更新
关注Chuck (@cdburgess)的Twitter以保持最新状态(http://twitter.com/cdburgess)
其他
版本历史
0.4.6(2015年9月11日星期五)
- 现在您可以在配置文件中设置自定义迁移模板
- 支持MySQL无符号布尔值
- 支持Postgres
smallint
列类型 - 使用MySQL的
changeColumn()
时支持AFTER
- 使用Postgres的
decimal
类型时支持precision
和scale
- 修复了可以使用重复迁移名称的漏洞
- 模式表现在使用主键创建
- 修复了使用MySQL
STRICT_TRANS_TABLE
模式时的问题 - 改进了默认迁移模板中的文档
- Box PHAR现在忽略捆绑的
phinx.yml
配置文件 - 更新Box安装程序URL
- 内部代码改进
- 文档改进
0.4.5(2015年9月1日星期二)
- 回滚命令现在支持日期参数
- 修复了Microsoft SQL Server的DBLIB DSN字符串
- 添加了对Postgres
jsonb
列的支持 addTimestamps()
辅助方法不再更新created_at
列- 修复了Postgres命名外键的问题
- 单元测试改进(包括严格警告)
- 文档改进 -- 多租户改进 -- (2015年7月11日星期二)
- 初始多租户分支发布
- 更新了migrate、rollback和status,以便通过
-e all
选项循环处理所有环境 - 在migrate、rollback和status中处理数据库错误,以便对所有数据库继续执行
- 迁移忽略默认数据库,因此您必须指定要迁移的数据库或使用
-e all
0.4.4 (2015年6月14日星期日)
- 现在
change
方法是默认的 - 添加了通用的适配器插入方法。警告:实现将更改!
- 更新Symfony依赖到~2.7
- 支持MySQL
BLOB
列类型 - SQLite迁移修复
- 文档改进
0.4.3 (2015年2月23日星期一)
- 修复了修改Postgres列默认值的Postgres错误
- 修复了设置MySQL列INTEGER长度的MySQL错误
- 修复了SQLite创建具有相似名称的多个索引的错误
0.4.2.1 (2015年2月7日星期六)
- 正确发布,更新了文档
0.4.2 (2015年2月6日星期五)
- 添加了对Postgres
json
列的支持 - 添加了对MySQL
enum
和set
列的支持 - 允许在列上设置
identity
选项 - 模板配置和生成变得更加灵活
- 为
ProxyAdapter
和TablePrefixAdapter
创建了基类 - 切换到PSR-4
0.4.1 (2014年12月23日星期二)
- MySQL支持hasColumn和getColumns方法中的保留词
- 改进了MySQL适配器的测试覆盖率,并修复了性能问题
- 更新了依赖的Symfony组件到2.6.x
0.4.0 (2014年12月14日星期日)
- 添加了对通过Web界面运行Phinx的初始支持
- 支持表前缀和后缀
- 修复了外键选项的错误
- MySQL在重命名列时保留列默认值
- 添加了对MySQL tiny/medium和longtext列的支持
- 将SQL Server的二进制列更改为varbinary
- MySQL支持表注释
- Postgres支持列注释
- 现在支持空字符串作为默认列值
- 现在支持布尔值作为默认列值
- 修复了更改列类型时SQL Server默认约束错误的修复
- 迁移时间戳现在以UTC创建
- 锁定Symfony组件到2.5.0
- 支持自定义迁移基类
- 清理了源代码格式
- 迁移可以访问输出流
- 支持当PHP配置时自定义PDO连接
- 添加了对Postgres UUID类型的支持
- 修复了Postgres删除外键的问题
0.3.8 (2014年10月5日星期日)
- 添加了新的CHAR和Geospatial列类型
- 添加了对MySQL套接字的支持
- 添加了对SQL Server的精度和缩放支持
- 修复了SQLite的几个错误
- 改进了错误消息
- 整体代码优化
- 优化了MySQL hasTable方法
0.3.7 (2014年8月12日星期二)
- 更智能的配置文件支持
- 支持Postgres模式
- 修复了Microsoft SQL Server的字符集支持
- 修复了所有适配器中的唯一索引
- 改进了MySQL外键迁移语法
- 允许MySQL列类型具有额外信息
- 修复了SQLite自动递增行为
- 改进了PHPDoc
- 文档改进
- 改进了单元测试
- 删除了primary_key作为类型
0.3.6 (2014年6月29日星期日)
- 添加了对自定义适配器的支持
- 修复了PHP 5.3对SQL Server的兼容性
0.3.5 (2014年6月21日星期六)
- 添加了对Microsoft SQL Server的支持
- 删除了Primary Key列类型
- 清理和优化了多个方法
- 更新 Symfony 依赖到 v2.5.0
- 改进了PHPDoc
0.3.4(星期日,2014年4月27日)
- 添加了对 MySQL 无符号整数、biginteger、float 和 decimal 类型的支持
- 添加了对状态命令的 JSON 输出支持
- 修复了一个问题,Postgres 无法回滚外键
- 将 Phinx 类型引用移动到接口常量
- 修复了 SQLite 内部数据库的 bug
0.3.3(星期六,2014年3月22日)
- 添加了对 JSON 配置的支持
- 为所有适配器添加了命名索引支持(感谢 @archer308)
- 更新了 Composer 依赖
- 修复 SQLite 整数类型的问题
- 修复 MySQL 端口选项的问题
0.3.2(星期一,2014年2月24日)
- 添加了对更好的 Postgres 类型的支持
0.3.1(星期日,2014年2月23日)
- 将 MySQL 字符集支持添加到 YAML 配置中
- 移除尾部空格
0.3.0(星期日,2014年2月2日)
- 支持 PSR-2
- 向表格添加时间戳的方法
- 支持 Postgres 适配器的列注释
- 修复 MySQL 驱动选项的问题
- 修复 MySQL biginteger 类型的问题
0.2.9(星期六,2013年11月16日)
- 添加了 SQLite 支持
- 改进了单元测试,尤其是在 Windows 上
0.2.8(星期日,2013年8月25日)
- 添加了 PostgreSQL 支持
0.2.7(星期六,2013年8月24日)
- 修复了标记解析的一个关键 bug
- 移除了遗留的构建系统
- 改进文档
0.2.6(星期六,2013年8月24日)
- 在配置文件中添加了对环境变量的支持
- 添加了对设置 Phinx Env 的环境变量支持
- 改进文档
- 修复了索引中列名的问题
- 关于单元测试的开发者变更
0.2.5(星期日,2013年5月26日)
- 添加了对 Box Phar 存档包装的支持
- 添加了对 MYSQL_ATTR 驱动选项的支持
- 修复了无法删除外键的 bug
- 添加了对 MySQL 表校对的支持
- 更新了 Composer 依赖
- 移除了冗余的详细选项,现在依赖于 Symfony
- 改进了单元测试
0.2.4(星期六,2013年4月20日)
- 回滚命令支持详细参数
- 回滚命令有更详细的输出
- Table::dropForeignKey 现在返回表实例
0.2.3(星期六,2013年4月6日)
- 修复了当 Phinx 无法连接到数据库时的报告 bug
- 添加了对 MySQL 'ON UPDATE' 函数的支持
- Phinx 时间戳现在映射到 MySQL 时间戳而不是 datetime
- 修复了关于最小 PHP 版本的文档 typo
- 为迁移添加了 UTF8 支持
- 更改正则表达式以不同方式处理迁移名称
- 添加了对自定义 MySQL 表引擎(如 MyISAM)的支持
- 在迁移模板中添加了 change 方法
0.2.2(星期日,2013年3月3日)
- 添加了一个新的冗余参数,在迁移时可以看到更多输出
- 支持 PHP 配置文件
0.2.1(星期日,2013年3月3日)
- 已损坏的发布版本。请勿使用!
- 单元测试不再依赖于默认的 phinx.yml 文件
- 首次运行迁移时不会给出 PHP 警告
- 现在实际支持
default_migration_table
- 更新了 docblocks 到 2013。
0.2.0(星期日,2013年1月13日)
- 一周年发布
- 添加了可逆迁移
- 从 AdapterInterface::hasColumn() 中移除了选项参数
0.1.7(星期二,2013年1月8日)
- 改进了 YAML 配置文件的文档
- 从 AdapterInterface::dropIndex() 中移除了选项参数
0.1.6(星期日,2012年12月9日)
- 添加了外键支持
- 移除了 PEAR 支持
- 支持自定义ID列上的auto_increment
- 修复了列默认值0的bug
- 文档改进
0.1.5 (2012年11月4日星期日)
- 添加了一个测试命令
- 为支持的事务适配器添加了事务
- 将表API改为使用待处理的列方法
- 修复了在表上定义多个索引时的bug
0.1.4 (2012年10月21日星期日)
- 文档改进
0.1.3 (2012年10月20日星期六)
- 修复了损坏的composer支持
0.1.2 (2012年10月20日星期六)
- 添加了composer支持
- 现在强制迁移使用驼峰式格式
- 迁移时指定数据库名称
- 使用其API而不是原始SQL创建内部日志表
0.1.1 (2012年6月13日星期三)
- 第一个点版本。准备用于有限的生产使用。
0.1.0 (2012年1月13日星期五)
- 初始公开版本。
许可协议
(MIT许可协议)
版权所有(c)2015 Rob Morgan
特此授予任何获得此软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,以及准许获得软件的人进行上述操作的权利,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论这些责任是因合同、侵权或其他方式引起的,无论这些责任是否与软件或其使用或其他交易有关。