vacuumdb [connection-option...] [--full | -f] [--verbose | -v] [--analyze | -z] [--table | -t table
[( column [,...] )]
] [dbname]
vacuumdb [connection-options...] [--all | -a] [--full | -f] [--verbose | -v] [--analyze | -z]
vacuumdb 是一个用于整理 PostgreSQL 数据库的工具。 vacuumdb 还将会生成用于 PostgreSQL 查询优化器的内部统计数据。
vacuumdb 是 SQL 命令 VACUUM 的封装。 因此,用哪种方法清理数据库都没什么特别的。
vacuumdb 接受下列命令行参数:
清理所有数据库。
声明要被清理或分析的数据库名称。 如果没有声明这个参数并且没有使用 -a(或 --all), 那么从环境变量 PGDATABASE 里读取数据库名。 如果那个也没有设置,则使用连接的用户名。
回显 vacuumdb 生成的查询并且把它发送到服务器。
执行"完全"清理.
不显示响应。
只是清理或分析 table。 字段名称只是在与 --analyze 选项联合使用时才需要声明。
提示: 如果你声明了要清理的字段,你可能不得不在 shell 上逃逸圆括弧(见下面的例子)。
在处理过程中打印详细信息。
计算用于优化器的该数据库的统计值。
vacuumdb 还接受下面的命令行参数用于联接参数:
声明运行服务器的机器的主机名。 如果主机名以斜杠开头,则它被用做到 Unix 域套接字的路径。
声明服务器在侦听联接的 TCP 端口号或一个本地的 Unix 域套接字文件句柄。
进行联接的用户名。
强制口令输入提示。
vacuumdb 可能需要与 PostgreSQL 服务器连接若干次,每次都询问口令。在这种情况下,设立一个 $HOME/.pgpass 是比较方便的。参阅 Section 27.11 获取更多信息。