vacuum_truncate 是一个配置参数,它决定了 vacuum 是否截断表末尾的任何空页。
vacuum_truncate 在PostgreSQL 18 中添加。
默认
vacuum_truncate 的默认值为:on。
用法
表截断需要对该表加一个 ACCESS EXCLUSIVE 锁。
请注意,即使 vacuum_truncate 被禁用,它也会被 VACUUM TRUNCATE 命令覆盖。
存储参数
vacuum_truncate 自 PostgreSQL 12 起即可作为存储参数使用。
按 PostgreSQL 版本详细信息
vacuum_truncate (PostgreSQL 19)
| 设置 | 开启 |
| 单位 | |
| 类别 | Vacuuming / 默认行为 |
| 简短描述 | 启用 vacuum 来截断表末尾的空页。 |
| 扩展描述 | |
| 上下文 | user |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
vacuum_truncate (PostgreSQL 18)
| 设置 | 开启 |
| 单位 | |
| 类别 | Vacuuming / 默认行为 |
| 简短描述 | 启用 vacuum 来截断表末尾的空页。 |
| 扩展描述 | |
| 上下文 | user |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
变更历史
- PostgreSQL 18
- 添加(提交 0164a0f9)
参考资料
- PostgreSQL 文档: vacuum_truncate
