2013-09-05 49 views
0

我们拥有5000+个Dbs(在MySQL - Unix机器上),每个都有类似的30-40个表。我们正在执行从一台机器到另一台机器的迁移活动(在MySQL - Unix机器上也一样)。在迁移后验证数据库

迁移完成后,测试人员如何确认活动是否成功?

我们尝试的是:

SELECT table_name的AS “表”,圆(((数据长度+ index_length)/ 1024/1024),2) “大小MB” FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA =“< \ Schema Name>“;

它提供了有关一个数据库的详细信息,但我们有5000多个数据库进行比较。这将是乏味的任务。否则,我们不得不选择抽样,但这不是一个具体的解决方案。

欢迎任何有用的建议!

谢谢您提前!

- 奇拉格费舍尔

回答

0

使用mysqldbcompare检查数据库都处于较高水平,并行由行。它是MySQL Workbench的一部分,或者可以单独下载。

如果你想自己烘烤,你可以使用innochecksum这个内置的MySQL工具来读取InnoDB数据文件,这样你就可以得到每个表的校验和,从而确保每个表中的数据在不同的实例中是相同的。

您可以类似地使用CHECKSUM TABLE MySQL命令来做同样的事情,也许作为数据库导入脚本的一部分。