1.制作脚本前,需要先安装mysql数据库和文本比较软件BeyondCompare。数据库安装教程,.beyond compare请自行百度下载安装,两款软件安装完成之后,便可以开始数据库升级脚本的制作
2.按照如图步骤,导出正式服务器的数据库和测试服务器数据库,并按照指定格式命名。
3.打开Beyond Compare软件,如图,选择文本比较,进入到文本比较主界面之后 ,如图选择要比较的sql文件,然后,软件会呈现出如图数据库结构的不同之处。
4.即使在比较出两个数据库的结构不同之后,对于sql语句的小白来说,很难写出升级数据库的升级脚本,下面我们将讲解如何利用mysql workbench来帮你写sql。
5.首先,在本地数据库创建test和release数据库,创建步骤如图所示。然后,将第二步导出的数据库分别导入到新建的数据库,接下来就可以对release数据库动手了。
6.下面以增加数据库表的一个字段为例,讲解sql语句的生成。由图中的7个步骤,便可以得到对一个表增加一个字段的sql语句,对表字段的增删改,对表内容的增删改操作,删除表操作类似可得。下面讲如何得到新建一个表的sql语句。
7.如图,便可得到创建表的语句。
8.上述的sql语句的集合便是数据库生成脚本,脚本通常是在workbench里面编辑查看和执行的,几个基本按钮的使用如图。
9.执行完上述sql脚本之后,正式服务器的数据库和测试服务器的数据库结构除了主键自增值,host差异之外,其余内容应全部相同,如果不是,则调整脚本内容,直至两个数据库的结构相同为止。
10.此时的数据库升级脚本仍为数据库升级暂时脚本,临时脚本需交由项目负责人审核检查之后,按照:工程名+版本+时间+正式+数据库升级脚本.sql保存,并上传svn,用于新版本发布。
注意事项
执行之前切记一定一定一定要对数据库的数据内容和结构做备份,以便执行错误后对数据进行恢复。
升级数据库尽量选择没有数据操作的深夜进行。