4

我使用 PostgreSQL 11.1,我正在尝试从pg_stat_all_indexes表中收集有关索引使用情况的信息,以确定是否可以删除特定索引 - 根据https://wiki.postgresql.org/wiki/Index_MaintenanceIndex size/usage statistics中的部分。

我注意到那里存在的信息会随着时间的推移发生显着变化(从几千个索引命中到 0),而且我在文档或此表本身中都找不到有关这些统计信息生命周期的信息。这让我很担心,因为我想确定,我要做出的关于删除索引的决定是基于足够长的一段时间内的统计数据。

有什么方法可以检查这些统计信息在pg_stat_all_indexes表中存储了多长时间?

4

1 回答 1

4

从手册中引用

当服务器干净关闭时,统计数据的永久副本存储在 pg_stat 子目录中,以便在服务器重新启动时保留统计信息。在服务器启动时执行恢复 [...] 时,所有统计计数器都会重置

(强调我的)

如果您想重置统计数据以获得基线,您可以使用pg_stat_reset()然后比较从该点开始的值(例如,通过存储每日快照并比较天之间的差异)

于 2019-12-09T09:58:56.573 回答