我将如何验证 8.3 postgresql 数据库中的数据与 9.0 数据库中的数据相同
当我在示例表上执行 sql 转储时,我们发现了许多差异,但这是由于 9.0 在日期字段的末尾和开头截断 0,转储的顺序也不是固定的,即使这可以用排序(没有双关语)。它不允许验证,因为它会丢失它所属的表,因为已排序的 sql 转储将是一堆毫无意义的 sql 命令,其中包含额外的转储设置。
count(*) 也不够。
我想 100% 确定一个中的数据与另一个中的数据相同,尽管存在版本差异以及至少在 9.0 中保存日期的方式。
我应该补充一下,我有数百个表和数百 GB 的数据。所以我需要一个像 diff DUMPa.sql DUMP2.sql 这样的自动化过程,数据的 SHA(不是格式)是个好主意,但是由于众所周知的原因,不能区分 PostgreSQL 的二进制转储。我知道 mysql 具有校验和功能,但我使用的是 postgresql。