在项目部署上线前,测试版和正式版的数据库表结构做过哪些变更,如果没有做好实时记录,那么就需要对比找出差异,否则代码部分更新后,可能导致功能异常。
数据库表结构对比的工具很多,但是为了方便部署同步的,这个在线对比工具还不错。
在线使用地址:http://dbcmp.taijicode.cn/
无需注册,直接使用。如下图所示。
填写数据库的地址、账号、密码,即可直接对比。可在对比之前,先测试连接是否成功。
对比后,页面输出对比结果
先是汇总对比结果,展示本次对比的2个数据库,各有多少张表,整体情况如何。如下图所示。
再展示详细的差异信息。会按照相同表、差异表、新增表、删除表、差异外键方式进行区分展示。
1)相同表。列出表名,汇总有多少张表相同。
2)差异表。有差异的地方,会直接输出同步SQL语句。语句前面的注释,还会告知在哪个数据库中执行。直接执行后,两边的表结构就会保持一致了。
但是注意:当前这个版本,没有判别出字段修改。
如果将字段A修改名称为B,那么对比结果会判别为:删除了字段A,同时新增了字段B,显然这个结果是不对的。这是一个严重的问题,希望后续改进。
3)新增表。输出新增表的创建表DDL语句,直接执行即可创建表。
4)删除表。输出删除表的执行SQL语句。执行后即可删除表。
5)差异外键。