有时候团队合作开发,会在测试数据库做部分修改,又没有记录下来改了哪里,把代码部署到正式库时,难免出点问题,就需要比对正式和测试环境下的数据库修改,使用 mysqldiff 工具
工具完整使用可参照官网文档,记录下常用的
mysqldiff --server1=root:123456@192.168.0.1:3306 //测试库MySQL
--server2=root:123456@192.168.0.2:3306 //正式库MySQL
--difftype=sql //差异展现形式,用sql语句,方便执行,也可用context在控制台显示
db1:db2 //选取的要比较的数据库,或者表db1.table1:db2.table1
--force //强行比较,即使发现不一致,也继续比较知道全部比较完成,不加会在第一个不一致处停下来
--skip-table-options //忽略对engine、ai(自增ID)、charset之类表选项的比较
--show-reverse //比较的两个服务器的变化都要显示
--changes-for=server1 //以server2 为参照,server1 发生的变化
>/root/mysqldata/diff/1.sql //
得出的结果是 /root/mysqldata/diff/1.sql 这个文件,内容是对比结果