我正在对在Docker容器中运行的数据库进行基准测试以解决碎片问题,并发现autovacuum守护程序未运行。
SELECT
schemaname, relname,
last_vacuum, last_autovacuum,
vacuum_count, autovacuum_count -- not available on 9.0 and earlier
FROM pg_stat_user_tables;
给予:
| schemaname | relname |last_vacuum| last_autovacuum |vacuum_count| autovacuum_count |
|------------|-------------|-----------|-----------------|------------| -----------------|
| public | mt_doc_order| <null> | <null> | 0 | 0 |
因此,我遇到了碎片表演效果:
启动PostgreSQL Docker容器时如何确保此autovacuum守护程序正在运行?
答案 0 :(得分:1)
运行SQL语句
ALTER SYSTEM SET autovacuum = on;
以超级用户身份,然后重新启动PostgreSQL服务器进程。