Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 9.3 Autovacuum尽管设置非常严格,但仍无法跟上_Postgresql_Postgresql 9.3_Vacuum_Autovacuum - Fatal编程技术网

Postgresql 9.3 Autovacuum尽管设置非常严格,但仍无法跟上

Postgresql 9.3 Autovacuum尽管设置非常严格,但仍无法跟上,postgresql,postgresql-9.3,vacuum,autovacuum,Postgresql,Postgresql 9.3,Vacuum,Autovacuum,试图让Postgresql保持表更干净,但即使在调整了资源限制之后,它似乎也根本无法保持 即使在凝固之后 ALTER TABLE veryactivetable SET (autovacuum_vacuum_threshold = 10000); 可激活的pg_stat_user_表返回63356 n_dead_tup,最后一次自动分析和最后一次自动真空超过24小时 posgresql.conf设置: shared_buffers = 7680MB work_mem = 39321kB ma

试图让Postgresql保持表更干净,但即使在调整了资源限制之后,它似乎也根本无法保持

即使在凝固之后

ALTER TABLE veryactivetable SET (autovacuum_vacuum_threshold = 10000);
可激活的pg_stat_user_表返回63356 n_dead_tup,最后一次自动分析和最后一次自动真空超过24小时

posgresql.conf设置:

shared_buffers = 7680MB
work_mem = 39321kB

maintenance_work_mem = 1920MB

vacuum_cost_delay = 0
vacuum_cost_page_hit = 1000
vacuum_cost_page_miss = 1000
vacuum_cost_page_dirty = 2000
vacuum_cost_limit = 7000


autovacuum = on
log_autovacuum_min_duration = 0
autovacuum_max_workers = 10
autovacuum_naptime = 10s
autovacuum_vacuum_threshold = 50
autovacuum_analyze_threshold = 50
autovacuum_vacuum_scale_factor = 0.05
autovacuum_analyze_scale_factor = 0.05
autovacuum_freeze_max_age = 200000000
autovacuum_vacuum_cost_delay = 50ms
autovacuum_vacuum_cost_limit = 7000

autovacuum\u vacuum\u scale\u factor
autovacuum\u analyze\u scale\u factor
设置为更高的值,可能最好返回默认值。无需让autovacuum运行得过于频繁,尤其是在您的情况下。这样做的目的是让它一开始就快速完成

autovacuum\u naptime
设置得更高,更接近原始默认值一分钟

autovacuum\u max\u workers
还原为3,除非您有大量数据库或表

要使autovacuum尽可能快地完成(这是目标),您应该将
autovacuum\u vacuum\u cost\u delay
设置为0

如果您只有几个非常繁忙的表格,最好将其设置在您在问题中所展示的表格上