vacuumdb命令 – 清理并优化PostgreSQL数据库

2023年 7月 22日 62.0k 0

vacuumdb命令的作用是可以清理并优化一个PostgreSQL数据库。

vacuumdb命令也将产生由PostgreSQL查询优化器所使用的内部统计信息。

vacuumdb命令是SQL命令VACUUM的一个包装器。在通过这个工具和其他方法访问服务器来清理和分析数据库之间没有实质性的区别。虽然在新版本的PostgreSQL中有自动的vacuum,但是如果是大批量的数据IO可能会导致自动执行很慢,需要配合手动执行以及自己的脚本来清理数据库。

语法格式:vacuumdb [参数] [数据库名]

-a 清理所有的数据库
-d 清理指定的数据库
-e 显示发送到服务端的命令
-f 完全清理
-F 冻结记录的事务信息
-q 不写任何信息
-t 只清理指定的表
-U 指定连接的用户名
-w 永远不提示输入口令
-W 强制提示输入口令
-h 数据库服务器所在主机的主机名或套接字目录
-p 指定数据库服务器端口号
-z 更新优化器信息
-v 输出大量的信息

参考实例

清理所有的数据库:

[root@xtuos.com ~]# su - postgres
$ vacuumdb -a

为优化器清理和分析一个名为bigdb的数据库:

[root@xtuos.com ~]# su - postgres
$ vacuumdb -z bigdb

清理数据库xtuos.com中的table1表:

[root@xtuos.com ~]# su - postgres
$ vacuumdb -d xtuos.com -t 'table1'

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论