Как включить автоочистку в PostgreSQL? Я понимаю цель, я просто не могу найти простой ответ о том, как его включить.
PostgreSQL: как включить автоочистку?
Ответы (2)
Автоочистка включена по умолчанию. Для небольших баз данных просто ничего не делайте, и все будет работать нормально. Для подтверждения проверьте
SHOW autovacuum;
в psql
. Он должен сообщить on
.
Большие и загруженные базы данных иногда требуют настройки, чтобы автоочистка выполнялась чаще или больше внимания уделялось загруженным таблицам очередей. Подробнее о настройке автоочистки см. в руководстве.
person
Craig Ringer
schedule
28.10.2015
Я проверил статус, как было предложено, и на самом деле команда вернулась. Возможно, я не понимаю, как работает автовакуум; Я продолжаю получать подсказки при использовании pgAdmin для запуска VACUUM... Я бы предположил, что autovacuum автоматически запускает VACUUM для таблиц периодически.
- person JTW; 29.10.2015
@woogy Так и есть. Может быть, pgadmin считает, что для определенных таблиц нужно больше? Также бывают ситуации с некоторыми рабочими нагрузками, когда автоочистка не справляется с настройками по умолчанию. В основном заняты столы очереди. Было бы лучше, если бы y8u показывал сообщения. ..
- person Craig Ringer; 29.10.2015
Вы также можете запустить пылесос вручную. Запустив команду psql vacuum full analyze verbose
. Это займет некоторое время.
person
Neeraj Bansal
schedule
20.03.2019
Имейте в виду, что это блокирует исключительно таблицы и поэтому не рекомендуется для больших производительных баз данных.
autovacuum
, напротив, работает с дросселированием.
- person Peopleware; 16.12.2019