此条目与 PostgreSQL 的一项功能相关,该功能是 PostgreSQL 18 的一部分,预计将于 2025 年底发布。
pg_ls_summariesdir()
是一个系统函数,返回有关 WAL 摘要目录中文件的信息。
pg_ls_summariesdir()
在 PostgreSQL 18 中添加。
用法
pg_ls_summariesdir () → setof record (name
text
,size
bigint
,modification
timestamp with time zone
)
pg_ls_summariesdir()
列出 pg_wal/summaries 目录的内容,不包括以点开头的文件名、目录和其他特殊文件。请注意,只有当 summarize_wal
设置为 on
时,才会生成 WAL 摘要文件。
默认情况下,只有超级用户和 预定义角色 pg_maintain
的成员才能执行 pg_ls_summariesdir()
。可以向其他用户授予 EXECUTE
权限。
更改历史记录
- PostgreSQL 18
- 添加 (提交 4e1fad37)
示例
pg_ls_summariesdir()
的基本用法示例
postgres=# SELECT * FROM pg_ls_summariesdir(); name | size | modification --------------------------------------------------+------+------------------------ 0000000100000000014F16F80000000002000028.summary | 578 | 2024-10-12 09:13:52+09 0000000100000000014F134800000000014F1680.summary | 88 | 2024-10-12 09:13:52+09 0000000100000000010B2FC800000000014EA760.summary | 4942 | 2024-10-12 09:13:52+09 00000001000000000100002800000000010B2FC8.summary | 4808 | 2024-10-12 09:13:52+09 0000000100000000014F168000000000014F16F8.summary | 32 | 2024-10-12 09:13:52+09 0000000100000000014F124800000000014F1348.summary | 56 | 2024-10-12 09:13:52+09 0000000100000000014EA86000000000014F1248.summary | 230 | 2024-10-12 09:13:52+09 0000000100000000014EA76000000000014EA860.summary | 56 | 2024-10-12 09:13:52+09 (8 rows)
如果 summarize_wal
已禁用,则返回空结果集
postgres=# SHOW summarize_wal; summarize_wal --------------- off (1 row) postgres=# SELECT * FROM pg_ls_summariesdir(); name | size | modification ------+------+-------------- (0 rows)
参考
- PostgreSQL 18 文档: 通用文件访问函数
另请参见
pg_available_wal_summaries()|], pg_wal_summary_contents()