mysql数据库版本控制dbv使用

版本控制软件有svn git等等,这些工具控制源码版本非常好用,但数据库的版本控制呢?传统方法是导出来整个数据库,这样的团队协作效率非常低。有没有一种工具,能方便同步数据库结构的呢?有的,也很多,本人使用dbv,能集成到PHP+MYSQL的项目中,很方便。

dbv1.1版本下载 https://github.com/victorstanciu/dbv/archive/1.1.zip

使用方法:

1. 下载后,解压到已经在git或SVN版本软件控制下的工程目录下,比如本人的工程目录是93zp_project,  解压后,dbv在93zp_project/dbv-master ,把dbv-master/data设置为可写权限。

2.把config.conf.sample 修改为config.conf 修改如下红色地方

define(‘DB_HOST‘, ‘localhost‘);
define(‘DB_PORT‘, 3306);
define(‘DB_USERNAME‘, ‘root‘);
define(‘DB_PASSWORD‘, ‘123456‘);
define(‘DB_NAME‘, ‘93zp‘);


 其中 93zp就为要版本控制的数据库。


3.访问 http://localhost/93zp_project/dbv-master/index.php 输入用户名dbv 密码dbv, 可以再config.conf修改这个用户名密码。就可以看到93zp的数据库表了,每次修改的记录都可以看到如下页面:



列【In DB】表示 记录是否在数据库中,列【On disk】表示记录是否导出到硬盘了。上面看到On disk的值为NO表示都还没有导出修改记录。

4.按按钮【Export to disk】,把记录导出,这样修改记录就能保存在dbv-master/data/schema 下面了。


团队成员更新工程后,也通过访问http://localhost/93zp_project/dbv-master/index.php 能看出哪些记录需要导入到数据库中的,勾选相应的记录,按按钮[push to databse]就可以同步数据库了!同步后,In DB是 YES 状态,比如下图, 修改记录aaa 与 ssss 都已经同步了。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。