微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Postgresql中检测并修复损坏的indeces?

今天我遇到了一个案例,表格中存在记录缺失的情况.我将问题追溯到可能是损坏的索引.在我做了REINDEX之后,问题就解决了.

事情是,通常当我运行报告时,我得到超过10000条记录.我不可能知道是否有丢失的记录.今天我很幸运能找到问题所在.

有没有办法在索引损坏时获取通知

如果没有,我如何编写一个REINDEX我的架构中的所有权限的函数

解决方法

索引损坏是非常糟糕的问题.我认为你需要从根本上诊断和解决这个问题,而不是试图在你的查询中帮助它.这可能是由于任何Postgres进程的kill -9等糟糕的管理操作引起的.

对于您的问题:没有验证工具AFAIK.我相信一个扫描整个索引的查询,例如index on index会在indeces中找到损坏的页面.

我建议你阅读this blog.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐