一.背景 在测试过程中,对于不同的测试团队,出于不同的测试目的,我们可能会有多套测试环境.在产品版本迭代过程中,根据业务需求,会对数据库的结构进行一些修改,如:新增表.字段.索引,修改表.字段索引等操作,在一些流程不规范的公司,开发人员不按照规范操作,不及时将这些修改数据库的 SQL 提交到 SVN/Git,当修改后的业务代码部署到新环境时就会引起错误,从而影响测试效率.换个角度再说,就算流程规范的大公司,核心业务都采取分库分表的架构,上千张表难道我们都采用手工执行 SQL 的方式去添加和修改字