0

我们有 5000 多个数据库(在 MySQL - Unix 机器上),每个数据库都有相似的 30-40 个表。我们正在执行从一台机器到另一台机器的迁移活动(在 MySQL - Unix 机器上同样如此)。

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

我们尝试的是:

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB" FROM information_schema.TABLES WHERE table_schema = "<\Schema Name>";

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

欢迎任何有用的建议!!

先感谢您!

——奇拉格·费舍尔

4

1 回答 1

0

用于mysqldbcompare在高级别和逐行检查数据库。它是 MySQL Workbench 的一部分,也可以单独下载。

如果你想自己烘焙,你可以使用innochecksum内置的 MySQL 工具来读取 InnoDB 数据文件,它为你提供了每个表的校验和,允许你确保每个表中的数据在实例之间是相同的。

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

于 2013-09-05T15:02:47.423 回答