| PostgreSQL Reference Manual - Volume 3 - Server Administration Guide by The PostgreSQL Global Development Group Paperback (6"x9"), 204 pages ISBN 0954612043 RRP £13.95 ($24.95) Sales of this book support the PostgreSQL project! Get a printed copy>>> |
4.9 Automatic Vacuuming
These settings control the behavior of the autovacuum feature. Refer to section 9.1.4 The auto-vacuum daemon for more information.
autovacuum(boolean)-
Controls whether the server should run the
autovacuum daemon. This is off by default.
stats_start_collectorandstats_row_levelmust also be turned on for autovacuum to work. This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. autovacuum_naptime(integer)-
Specifies the delay between activity rounds for the autovacuum
daemon. In each round the daemon examines one database
and issues
VACUUMandANALYZEcommands as needed for tables in that database. The delay is measured in seconds, and the default is one minute (1m). This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. autovacuum_vacuum_threshold(integer)-
Specifies the minimum number of updated or deleted tuples needed
to trigger a
VACUUMin any one table. The default is 500 tuples. This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. This setting can be overridden for individual tables by entries inpg_autovacuum. autovacuum_analyze_threshold(integer)-
Specifies the minimum number of inserted, updated or deleted tuples
needed to trigger an
ANALYZEin any one table. The default is 250 tuples. This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. This setting can be overridden for individual tables by entries inpg_autovacuum. autovacuum_vacuum_scale_factor(floating point)-
Specifies a fraction of the table size to add to
autovacuum_vacuum_thresholdwhen deciding whether to trigger aVACUUM. The default is 0.2 (20% of table size). This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. This setting can be overridden for individual tables by entries inpg_autovacuum. autovacuum_analyze_scale_factor(floating point)-
Specifies a fraction of the table size to add to
autovacuum_analyze_thresholdwhen deciding whether to trigger anANALYZE. The default is 0.1 (10% of table size). This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. This setting can be overridden for individual tables by entries inpg_autovacuum. autovacuum_freeze_max_age(integer)-
Specifies the maximum age (in transactions) that a table's
pg_class.relfrozenxidfield can attain before aVACUUMoperation is forced to prevent transaction ID wraparound within the table. Note that the system will launch autovacuum processes to prevent wraparound even when autovacuum is otherwise disabled. The default is 200 million transactions. This parameter can only be set at server start, but the setting can be reduced for individual tables by entries inpg_autovacuum. For more information see section 9.1.3 Preventing transaction ID wraparound failures. autovacuum_vacuum_cost_delay(integer)-
Specifies the cost delay value that will be used in automatic
VACUUMoperations. If-1is specified (which is the default), the regularvacuum_cost_delayvalue will be used. This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. This setting can be overridden for individual tables by entries inpg_autovacuum. autovacuum_vacuum_cost_limit(integer)-
Specifies the cost limit value that will be used in automatic
VACUUMoperations. If-1is specified (which is the default), the regularvacuum_cost_limitvalue will be used. This parameter can only be set in the ‘postgresql.conf’ file or on the server command line. This setting can be overridden for individual tables by entries inpg_autovacuum.
| ISBN 0954612043 | PostgreSQL Reference Manual - Volume 3 - Server Administration Guide | See the print edition |