postgresql 中的真空表

8 sql postgresql vacuum postgresql-performance

使用,在这一刻上午发现的已经dead_tuples使用下面的查询

select relname from pg_stat_user_tables where n_dead_tup > 0
Run Code Online (Sandbox Code Playgroud)

这将重新调整表名,然后我将运行

VACUUM VERBOSE ANALYZE <table_name>
Run Code Online (Sandbox Code Playgroud)

这是一个好方法还是我需要改变它,如果是这样,请给我一些方法

谢谢

Has*_*ani 4

根据文档

VACUUM 回收死元组占用的存储空间。

但根据这篇文章

死行是已删除的行,稍后将重新用于 INSERT 或 UPDATE 中的新行。一些死行(或保留的可用空间)对于 HOT(仅堆元组)更新特别有用,可以有效地重用同一数据页中的空间

  • @MagnoC你必须使用真空。如果没有真空,大数据库将难以存储和管理。最好为 autovacuum 设置正确的设置,它会自行完成。 (2认同)