亚马逊rds PostgreSQL是否需要抽真空?


12

目前尚不清楚自动吸尘器是否在rds中运行。谢谢!


6
运行SHOW autovacuum;。或启用自动真空日志记录并检查日志。RDS当然确实需要真空,但是如果它没有进行非常激进的自动真空处理,我会感到惊讶。
克雷格·林格2014年

Answers:


14

运行此查询以显示是否/何时清理表。

SELECT * FROM pg_stat_all_tables;

在达到插入/更新/删除阈值(即20%)之前,不会清理表。

您可以通过创建新的数据库参数组并更改所需的设置来调整RDS中的设置。


3

RDS文档状态:

默认情况下,将为所有新的Amazon RDS PostgreSQL数据库实例启用自动清理,并且默认情况下适当设置了相关的自动清理配置参数。由于我们的默认设置有些通用,因此您可以从针对特定工作负载调整参数中受益。

您可以使用以下命令检查autovacuum的激活:SHOW autovacuum; 获得简单onoff答案。

您可以使用以下命令获取更多详细信息: SELECT name, setting FROM pg_settings WHERE name LIKE '%autovacuum%';

返回的数据示例:

                name                 |  setting  
-------------------------------------+-----------
 autovacuum                          | on
 autovacuum_analyze_scale_factor     | 0.05
 autovacuum_analyze_threshold        | 50
 autovacuum_freeze_max_age           | 200000000
 autovacuum_max_workers              | 3
 autovacuum_multixact_freeze_max_age | 400000000
 autovacuum_naptime                  | 5
 autovacuum_vacuum_cost_delay        | 5
 autovacuum_vacuum_cost_limit        | -1
 autovacuum_vacuum_scale_factor      | 0.1
 autovacuum_vacuum_threshold         | 50
 autovacuum_work_mem                 | -1
 log_autovacuum_min_duration         | -1
 rds.force_autovacuum_logging_level  | disabled

这些设置(以及其他vacuum设置)在此处为Postgres记录。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.