vacuumdb
是一个用于真空清理和分析PostgreSQL的核心实用程序。
vacuumdb
添加于PostgreSQL 7.0。
用法
vacuumdb
实际上是围绕VACUUM
和ANALYZE
命令的命令行包装器,并具有其他便利功能,例如:
- 分阶段运行
ANALYZE
(--analyze-in-stages
选项) - 一次性清理所有数据库 (
--all
选项)
vacuumdb --all选项
有点违反直觉的是,当指定--all
时,vacuumdb
会拒绝-d
/--dbname
选项。
$ vacuumdb --all --analyze-in-stages -d 'host=node1 port=5433' vacuumdb: error: cannot vacuum all databases and a specific one at the same time
在这种情况下,使用--maintenance-d
b 选项提供显式数据库名称或conninfo 字符串。
源代码
vacuumdb
的源代码位于 src/bin/scripts/vacuumdb.c。
更改历史记录
- PostgreSQL 17
- 选项
-a
/--all
现在可以与--table
、--schema
和--exclude-schema
结合使用 (提交 648928c7)
- 选项
- PostgreSQL 16
- PostgreSQL 14
- PostgreSQL 13
- 添加了选项
--parallel
(提交 47bc9ced)
- 添加了选项
- PostgreSQL 12
- PostgreSQL 9.5
- 添加了用于并行处理的选项
-j
/--jobs
(提交 a1792320)
- 添加了用于并行处理的选项
- PostgreSQL 9.4
- 添加了选项
--analyze-in-stages
(提交 c92c3d50)
- 添加了选项
- PostgreSQL 9.3
- 支持多个
-t
/--table
参数 (提交 f3af5344)
- 支持多个
- PostgreSQL 9.2
- 添加了
--maintenance-db
选项 (提交 68281e00)
- 添加了
- PostgreSQL 9.0
- 添加了选项
--analyze-only
(提交 3ccb97b2)
- 添加了选项
- PostgreSQL 8.4
- PostgreSQL 8.3
- 添加了Ctrl-C中断处理程序 (提交 6e09df9d)
- PostgreSQL 7.4
- 从shell脚本转换为C程序 (提交 f374a9da)
- PostgreSQL 7.3
- 添加了对包含空格的标识符的支持 (提交 5804a7ce)
- PostgreSQL 7.0
- 添加 (提交 240e4c98)
示例
$ vacuumdb --all --analyze-in-stages vacuumdb: processing database "contentdb": Generating minimal optimizer statistics (1 target) vacuumdb: processing database "postgres": Generating minimal optimizer statistics (1 target) vacuumdb: processing database "template1": Generating minimal optimizer statistics (1 target) vacuumdb: processing database "contentdb": Generating medium optimizer statistics (10 targets) vacuumdb: processing database "postgres": Generating medium optimizer statistics (10 targets) vacuumdb: processing database "template1": Generating medium optimizer statistics (10 targets) vacuumdb: processing database "contentdb": Generating default (full) optimizer statistics vacuumdb: processing database "postgres": Generating default (full) optimizer statistics vacuumdb: processing database "template1": Generating default (full) optimizer statistics
参考
- PostgreSQL文档: vacuumdb