我如何看待2个MySQL转储之间的差异?

Tre*_*ree 26 mysql diff mysqldump

我有2个MySQL转储文件.我想找到2个表之间的表数据差异.

Fab*_*oli 11

使用"--skip-opt"运行mysqldump以获取2个转储文件,即:

mysqldump --skip-opt -u $MY_USER -p$MY_PASS mydb1 > /tmp/dump1.sql

mysqldump --skip-opt -u $MY_USER -p$MY_PASS mydb2 > /tmp/dump2.sql
Run Code Online (Sandbox Code Playgroud)

比较使用这些差异选项:

diff -y --suppress-common-lines /tmp/dump1 /tmp/dump2
Run Code Online (Sandbox Code Playgroud)


OMG*_*ies 9

使用DIFF工具 - 这里有一些图形工具(两者都是免费的):


Mos*_*zán 6

我只需在),('s 添加换行符,以便每个记录成为单独的行。然后结果可以输入到类似的工具diff。该命令完成以下工作:

FORMAT_="s/),(/),\n(/g"
diff <(sed $FORMAT_ old-dump.sql) <(sed $FORMAT_ new-dump.sql)
Run Code Online (Sandbox Code Playgroud)