MySQL迁移工具在生产环境下的使用
在产品迭代开发发布过程中,由于业务需求的增加,数据库难免会有结构调整等操作.在每个版本发布过程中怎么控制每个版本server端程
在产品迭代开发发布过程中,由于业务需求的增加,,数据库难免会有结构调整等操作.
在每个版本发布过程中怎么控制每个版本server端程序与数据库版本保持一致,以及数据库升级、回滚等操作.
本博文宅鸟将向大家推荐一款mysql数据库迁移工具mysql-php-migrations
由于具体需求不同,宅鸟根据自己公司的情况将mysql-php-migrations做了一些修改来满应用!
宅鸟修改程序后的mysql迁移程序有以下目录:
config 配置文件
dbscript sql脚本目录
lib 迁移程序类库
migrate.php 迁移命令执行入口
执行php migrate.php
可以看到如下结果
我们可以看到migrate.php有很多命令
php migrate.php add test
结果:
__ __ __ __
|\/| (_ / \| __ |__)|__||__) __ |\/|. _ _ _ |_. _ _ _
| |\/__)\_\/|__ | | || | ||(_)| (_||_|(_)| )_)
/ _/
******************************************************************** v2.0.1 ***
New migration created: file
/var/www/mysqlMigrations/dbscript/2013_12_18_14_50_45_test.php
*******************************************************************************
cd dbscript
total 16
-rw-r--r-- 1 www-data www-data 4837 Sep 29 09:21 2013_06_18_17_14_16_v1.php
-rw-r--r-- 1 www-data www-data 802 Sep 29 13:29 2013_09_29_12_00_12_v1.php
-rw-r--r-- 1 root www-data 240 Dec 18 14:50 2013_12_18_14_50_45_test.php
此时dbscript目录已经新添加一个2013_12_18_14_50_45_test.php文件,改文件格式如下:
class Migration_2013_12_18_14_50_45 extends MpmMysqliMigration
{
public function up(ExceptionalMysqli &$mysqli)
{
$mysqli->exec("DO 0");
}
public function down(ExceptionalMysqli &$mysqli)
{
$mysqli->exec("DO 0");
}
}
?>
把需要修改的数据库脚本写在up函数中:
把对应修改修改所做的回滚操作卸载down函数中
注意:在生产环境下建议只做数据库的向上变迁,不做down操作,避免用户有用数据丢失.
上一篇: sqlserver下调试sql语句
下一篇: 详解Android中接口回调、方法回调
推荐阅读
-
MySQL迁移工具在生产环境下的使用
-
在WAMP环境下搭建ZendDebugger php调试工具的方法_PHP教程
-
在PHP+Apache+MySQL环境下(windows系统),连接SQLServer数据出现“can not find driver”问题的解决办法
-
solaris 11中怎么在没有安装mysql的机器下使用mysql_connect等函数
-
PHP+Apache+MySQL+phpMyAdmin在win7系统下的环境配置
-
在.NET环境下正确的访问MySQL数据库操作流程
-
大侠,在windows环境下的mysql 存储过程、视图在linux下是否都能运行
-
MySQL的安装、使用环境及其基本工具的使用
-
[转载]apache和mysql在windows下的一些使用技巧_MySQL
-
在.NET环境下正确的访问MySQL数据库操作流程