doublemcz / dibi-migrations
基于dibi的简单数据库迁移层
1.1.2
2014-12-27 08:42 UTC
Requires
- php: >=5.3.0
- dibi/dibi: *
This package is not auto-updated.
Last update: 2024-09-14 16:18:51 UTC
README
Dibi迁移可以通过Composer安装。
安装
composer require doublemcz/dibi-migrations
基本用法
将以下代码包含到您想要迁移数据库的脚本中
$config = array(
'driver' => 'mysql',
'host' => 'localhost',
'user' => 'root',
'password' => '',
'database' => 'dibi-migrations',
);
$dibiConnection = new DibiConnection($config);
$migrationsPath = __DIR__ . '/migrations';
$tempDirectory = __DIR__ . '/temp';
$engine = new doublemcz\DibiMigrations\Engine($dibiConnection, $migrationsPath, $tempDirectory);
$engine->process();
Nette 2.2中的用法
您可以使用Nette扩展来初始化引擎并自动运行迁移。在config.neon中添加以下行
extensions:
dibiMigrations: Doublemcz\DibiMigrations\DibiMigrationsNetteExtension22
创建迁移
迁移文件夹由开发新代码的人员标识符组成。您必须为每位开发者使用唯一标识符。迁移目录的结构应如下所示
app =>
doublem =>
2014_12_24_18_00.sql
2014_12_31_23_00.sql
foglcz =>
2015_01_01_17_05.sql
您可以看到用户doublem的两个迁移。第一个是在2014年12月24日18:00创建的。另一个用户foglcz在2015年1月1日17:05创建了迁移。
保持有效的日期是非常重要的,因为如果您将部署到生产环境,引擎会排序迁移并将它们按正确顺序部署。
临时目录用于保存临时迁移目录的状态文件。它包含迁移的文件数和锁文件。迁移状态文件夹(db-migration.dat)包含文件数。在升级运行时创建迁移锁文件(db-migration.lock)。
我建议您查看./example/index.php。
最后,我想感谢dibi库的创始人David Grudl。