mysql - 如何比较 2 个 mysql 转储

标签 mysql bash

我一直在测试该命令

mysqldump databaseName > mysqlDump1

在两台服务器上分别运行,我在这两台服务器上针对相同的软件处理相同的数据。

当我比较输出的文件时,有很多差异(包括文件大小)。我猜是日期戳等导致了它,但是有没有办法使两个转储相同?

这样我就可以用它来回归测试软件更改,在处理时我不希望数据库发生更改(除非我的更改应该影响它......很少见)

最佳答案

最有可能的问题是 mysqldump 不保证以一致的顺序转储行。即使在同一台机器上对相同数据进行两次转储,理论上也可能以不同的顺序插入。

mysqldump 确实有一个选项 --order-by-primary,这可能会有所帮助,但文档警告说它比普通转储需要更长的时间。

关于mysql - 如何比较 2 个 mysql 转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52716005/

相关文章:

bash - 如何将 Inotify shell 脚本作为异步进程运行

linux - 用变量中包含空格的sed替换文本

linux - sed 正则表达式不贪心?

linux - 另一个命令中的 Bash 命令变量

php - 如何使用 angularjs 和 php 发送电子邮件验证?

bash - 为什么我的(centos)docker容器无法运行/etc/bashrc?

Jquery 上传图像插件 ex。上传

php - 控制数据是否存在于数组中

MySQL 删除表不适用于前缀

mysql - 最终的 MySQL 查询接触