如何在postgresql中找到损坏的表? 我必须找到损坏的表名,对此我一无所知。
答案 0 :(得分:0)
没有绝对万无一失的方法。
您能做的最好的是
pg_dump -f /dev/null dbname
这将读取所有表并在导致错误的第一次损坏时抛出错误。
有缺点:
它将不会检测到不会导致错误的损坏。在PostgreSLQ中启用数据校验和将对此有所改善。
它将不会检测到索引损坏(可以使用REINDEX
进行修复。
它只会在失败之前找到第一个损坏。
您可以排除该表并再次运行以查找其他损坏的表。