Win7下PHINX的安装和使用
在开发领域,版本控制系统的作用有非常重要的作用,开发者都会用代码管理系统来做开发,有着极大的方便。
那么对数据库的管理开发工作怎么进行版本控制呢?
接下来我们看一款大家都在试用的数据库版本控制管理软件PHINX.
Phinx 是用PHP语言开发的,Phinx 可以让开发者简洁的修改和维护数据库,从此不用人为的手写 SQL 语句。
开发者可以使用PHINX管理数据库迁移。 Phinx 还可以方便的进行不同数据库之间数据迁移。也可以追踪到哪些迁移脚本被执行,总而言之,功能很强大。
一般我们都在windows系统下进行开发工作,那么接下来介绍下win7 平台下PHINX的安装和使用。
1.安装composer,win7下安装composer这里就不作介绍了。读者可以自行搜索相关资料。
2.在D盘创建项目目录d:/phinx,控制台进去,执行
composer require robmorgan/phinx
这样就phinx就安装成功了
3.接下来进入目录D:phinxvendorbin,执行
phinx.bat init
这样就初始化成功了,PHINX会在当前目录下生成配置文件phinx.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
4.接下来修改配置文件,配置数据库和路径,修改phinx.yml如下所示:
paths:
migrations: 'd:/phinx/db/migrations'
seeds: 'd:/phinx/db/seeds'
environments:
default_migration_table: phinxlog
default_database: development
production:
adapter: mysql
host: 192.168.1.111
name: production_db
user: root
pass: 'aaa123'
port: 3306
charset: utf8
development:
adapter: mysql
host: localhost
name: development_db
user: root
pass: 'aaa123'
port: 3306
charset: utf8
testing:
adapter: mysql
host: localhost
name: testing_db
user: root
pass: 'yeko123'
port: 3306
charset: utf8
version_order: creation
其中migrations和seeds目录配置成绝对目录,根据您的项目所在目录配置,然后就是生产环境和开发环境的数据库账户密码配置
5.在根目录下创建文件夹db/migrations和db/seeds
6.接下来在控制台执行
phinx create MyMigration
系统会在db/migrations下生成日期+名称的文件20180420031540_my_migration.php
<?php
use Phinx\Migration\AbstractMigration;
class MyMigration extends AbstractMigration
{
public function change()
{
}
}
7.修改刚刚生成的文件
<?php
use Phinx\Migration\AbstractMigration;
class MyMigration extends AbstractMigration
{
public function up()
{
$table = $this->table('userinfo');
$table->addColumn('user_id', 'integer')
->addColumn('user_name', 'string')
->create();
}
}
在控制执行
phinx migrate -e development
就会执行上面的文件,数据库生成表。
8.生成种子数据。在控制台执行
phinx seed:create Userseeder
系统会在db/seeds下生成文件UserSeeder.php
修改成
<?php
use Phinx\Seed\AbstractSeed;
class UserSeeder extends AbstractSeed
{
public function run()
{
$data = array(
array(
'user_id' => '1',
'user_name' => 'ethan1',
),
array(
'user_id' => '2',
'user_name' => 'ethan1',
)
);
$posts = $this->table('userinfo');
$posts->insert($data)
->save();
}
}
在控制台执行
phinx seed:run
数据库就插入了数据了,如图所示
Win7下PHINX的安装和使用(二)
更多内容待续....
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。