您可以使用pgstatindexfrompgstattuple扩展来获取所有 B 树索引的叶子碎片:
SELECT i.indexrelid::regclass,
s.leaf_fragmentation
FROM pg_index AS i
JOIN pg_class AS t ON i.indexrelid = t.oid
JOIN pg_opclass AS opc ON i.indclass[0] = opc.oid
JOIN pg_am ON opc.opcmethod = pg_am.oid
CROSS JOIN LATERAL pgstatindex(i.indexrelid) AS s
WHERE t.relkind = 'i'
AND pg_am.amname = 'btree';
Run Code Online (Sandbox Code Playgroud)
这将扫描所有这些索引,并且可能需要很长时间。
请注意,索引的碎片率达到 70% 是正常的。
| 归档时间: |
|
| 查看次数: |
5943 次 |
| 最近记录: |