Documentazione di PostgreSQL 9.0 > Amministrazione del server > Configurazione del server > Automatic Vacuuming
PrecedenteStatistiche durante l'esecuzioneValori predefiniti della connessione del clientSuccessivo

18.9. Automatic Vacuuming

These settings control the behavior of the autovacuum feature. Refer to Sezione 23.1.5, «The Autovacuum Daemon» for more information.

autovacuum (boolean)

Controls whether the server should run the autovacuum launcher daemon. This is on by default; however, track_counts must also be enabled for autovacuum to work. This parameter can only be set in the postgresql.conf file or on the server command line.

Note that even when this parameter is disabled, the system will launch autovacuum processes if necessary to prevent transaction ID wraparound. See Sezione 23.1.4, «Preventing Transaction ID Wraparound Failures» for more information.

log_autovacuum_min_duration (integer)

Causes each action executed by autovacuum to be logged if it ran for at least the specified number of milliseconds. Setting this to zero logs all autovacuum actions. Minus-one (the default) disables logging autovacuum actions. For example, if you set this to 250ms then all automatic vacuums and analyzes that run 250ms or longer will be logged. Enabling this parameter can be helpful in tracking autovacuum activity. This setting can only be set in the postgresql.conf file or on the server command line.

autovacuum_max_workers (integer)

Specifies the maximum number of autovacuum processes (other than the autovacuum launcher) which may be running at any one time. The default is three. This parameter can only be set at server start.

autovacuum_naptime (integer)

Specifies the minimum delay between autovacuum runs on any given database. In each round the daemon examines the database and issues VACUUM and ANALYZE commands as needed for tables in that database. The delay is measured in seconds, and the default is one minute (1min). 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 VACUUM in any one table. The default is 50 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 changing storage parameters.

autovacuum_analyze_threshold (integer)

Specifies the minimum number of inserted, updated or deleted tuples needed to trigger an ANALYZE in any one table. The default is 50 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 changing storage parameters.

autovacuum_vacuum_scale_factor (floating point)

Specifica una frazione della dimensione della tabella per aggiungere autovacuum_vacuum_threshold quando di decide se attivare un VACUUM. Il valore predefinito è 0.2 (20% della dimensione della tabella). Questo parametro può essere impostato nel file postgresql.conf o dalla linea di comando del server. Questa impostazione può essere sovrascritta per tabelle individuali cambiando parametri di immagazzinamento.

autovacuum_analyze_scale_factor (floating point)

Specifica una frazione della dimensione della tabella da aggiungere a autovacuum_analyze_threshold quando si decide se eseguire un trigger su un ANALYZE. Il valore predefinito è 0.1 (10% della dimensione della tabella). Questo parametro può essere impostato solo nel file postgresql.conf o dalla linea di comando del server. Questa impostazione può essere sovrascritta per tabelle individuali cambiando i parametri di immagazzinamento.

autovacuum_freeze_max_age (integer)

Specifica l'età massima (in transazioni) che un campo della tabella pg_class.relfrozenxid può ottenere prima che un'operazione di VACUUM sia forzata per prevenire il wraparound degli ID di transazione all'interno della tabella. Si noti che il sistema lancerà i processi autovacuum per prevenire il wraparound anche quando l'autovacuum è altrimenti disabilitato.

Vacuum also allows removal of old files from the pg_clog subdirectory, which is why the default is a relatively low 200 million transactions. This parameter can only be set at server start, but the setting can be reduced for individual tables by changing storage parameters. For more information see Sezione 23.1.4, «Preventing Transaction ID Wraparound Failures».

autovacuum_vacuum_cost_delay (integer)

Specifies the cost delay value that will be used in automatic VACUUM operations. If -1 is specified, the regular vacuum_cost_delay value will be used. Il valore predefinito è 20 millisecondi. Questo parametro può essere impostato solo nel file postgresql.conf o dalla linea di comando del server. Questa impostazione può essere sovrascritta per tabelle individuali cambiando i parametri di immagazzinamento.

autovacuum_vacuum_cost_limit (integer)

Specifica il valore del limite di costo che sarà usato in operazioni di VACUUM. Se è specificato -1 (che è il valore predefinito), sarà usato il valore vacuum_cost_limit regolare. Si noti che il valore è distribuito proporzionalmente tra i worker autovacuum in esecuzione, se ce ne sono più di uno, così che la somma dei limiti di ogni worker non ecceda mai il limite di questa variabile. Questo parametro può essere impostato solo nel file postgresql.conf o dalla linea di comando del server. Questa impostazione può essere sovrascritta per tabelle individuali cambiando parametri di immagazzinamento.

Documentazione di PostgreSQL 9.0 > Amministrazione del server > Configurazione del server > Automatic Vacuuming
PrecedenteStatistiche durante l'esecuzioneValori predefiniti della connessione del clientSuccessivo