设置表级别 Autovacuum 参数 - Amazon Relational Database Service

设置表级别 Autovacuum 参数

您可以在表级别设置与 autovacuum 相关的存储参数,这可能优于更改整个数据库的行为。对于大型表,您可能需要设置主动设置,并且可能不希望 Autovacuum 对所有表的行为都相同。

以下查询将显示哪些表当前拥有表级别选项。

SELECT relname, reloptions FROM pg_class WHERE reloptions IS NOT null;

例如,对于比您的其他表大得多的表,这可能会很有用。假设您具有一个 300GB 表和另外 30 个小于 1GB 的表。在这种情况下,可以为大型表设置一些特定的参数,这样便无需更改整个系统的行为。

ALTER TABLE mytable set (autovacuum_vacuum_cost_delay=0);

这样便可通过使用系统中的更多资源来禁用此表的基于成本的 autovacuum 延迟。通常,每次达到 autovacuum_cost_limit 时,autovacuum 会暂停 autovacuum_vacuum_cost_delay。有关更多详细信息,请参阅 PostgreSQL 文档中有关基于成本的 vacuum 操作的内容。