公司开发项目过程当中,后台会分为不少种服务,好比web服务,采集服务,都须要去操做数据库,有的时候甚至前端也会去操做数据库,修改字段,增长字段,删除字段,修改初始化数据等。怎么在各方之间进行同步?本文介绍了一种基于Git(腾讯云(原Coding))的数据库sql文件管理方式。html
采集端C因为1个月没更新,可是数据库版本已经发布了多个,采集端编码好,统一发布以后,采集端不能运行成功,由于数据库在服务端B增长修改了字段,而采集端没有同步形成。前端
怎么把各方的数据库版本同步,根据代码管理规范,我想到了Git,用Git来管理Sql文件。Sql分红两份文件,一份是IBMS_Structure.sql,数据库结构文件;另外一份是IBMS_InitData.sql初始化数据文件以下
mysql
其余定制项目能够用同一个结构sql,可是不一样的初始化数据文件,如南通项目IBMS_InitDataNT.sql;银川项目用IBMS_InitDataYC.sqlgit
原则:全部人都须要本身创建独立的数据库来调试web
IBMS_Structure.sqlsql
导入步骤数据库
打开数据库管理工具navicat.exe,工具
IBMS_InitData.sql编码
导入步骤3d
同上。
具体可参照Git管理代码类文章
不管是A或者B或者C修改了数据库的结构或初始化,导出两份文件,一份结构,一份初始化数据(须要删除其余非初始化的垃圾脏数据)
右键要导出的表,单击数据传输
git add . git commit -m "B修改了xxx字段" git push origin master
具体可参照Git管理代码类文章
修改者以邮件形式发送你们修改了哪些字段,其余项目成员能够去看Git,上面会有对比不一样的记录
其余被同步者把结构跟初始化数据两份sql pull到本地,从新导入本身独立的数据库以达到同步。