1. 首页
  2. 数据库运维
  3. PostgreSQL

Postgresql忽略个别表的autovacuum维护

在postgresql中用于维护数据库磁盘空间的工具是vacuum,其重要的作用是删除那些已经标示为删除的数据并释放空间。

因为在postgresql执行delete操作后,表中的记录只是被标示为删除状态,并没有释放空间,在以后的update或insert操作中该部分的空间是不能够被重用的。所以需要用vacuum清理,空间才能得到释放。

默认数据库是开启自动清理的,自动vacuum的执行直接由autovacuum参数值决定。但是有时候我们可能不需要对一张表执行autovacuum,设置很简单,如下:

test=# CREATE TABLE foo (a int);
CREATE TABLE
test=# alter table foo SET ( autovacuum_enabled=false) ;
ALTER TABLE
test=# select relname from pg_class where reloptions@>array['autovacuum_enabled=false']

可以在pg_class这张系统表中查看忽略autovacuum的表。

联系我们

0574-55011290

QQ:248687950

邮件:admin@nbhao.org

工作时间:周一至周五,9:00-18:00,节假日休息

QR code