我有2个相同的数据库。 abc15和abc18。但是其中一个数据库有一个额外的表,我需要找到它。我认为以下查询应该返回它,但是它没有显示我期望的记录。
select * from information_schema.tables as a
left join information_schema.tables as b
on a.TABLE_SCHEMA=b.TABLE_SCHEMA AND a.TABLE_NAME=b.TABLE_NAME
where a.TABLE_SCHEMA = 'abc15' AND b.TABLE_SCHEMA='abc18' and
b.TABLE_NAME IS NULL
答案 0 :(得分:3)
如果数据库b有额外的表怎么办?在末尾尝试完整的外连接和额外的约束(OR a.TABLE_NAME IS NULL)
答案 1 :(得分:1)
$ mysqldumpslow --database abc15 >/tmp/a
$ mysqldumpslow --database abc18 >/tmp/b
$ diff /tmp/a /tmp/b