Как уменьшить рост базы данных Postgresql автоматически?

Примечание

Данные настройки в версии 4.4 и выше добавляются автоматически.

Если у вас база данных слишком быстро растёт, то можно попробовать сдержать её рост агрессивными параметрами «автовакума». Автовакум это такой встроенный процесс для поддержания структуры базы данных в упорядоченном виде.

Шаги для достижения цели:

  • Нужно открыть консоль linux на сервере с установленным Staffcop Server

  • Открыть на редактирование файл настроек postgresql (9.5 - ваша версия postgresql):

sudo nano /etc/postgresql/9.5/main/postgresql.conf
  • В конце файла вставить строки:

autovacuum = on # Enable autovacuum subprocess? 'on'
log_autovacuum_min_duration = 0 # -1 disables, 0 logs all actions and
autovacuum_max_workers = 5 # max number of autovacuum subprocesses
autovacuum_naptime = 1min # time between autovacuum runs
autovacuum_vacuum_threshold = 300 # min number of row updates before
autovacuum_analyze_threshold = 200 # min number of row updates before
autovacuum_vacuum_scale_factor = 0.01 # fraction of table size before vacuum
autovacuum_analyze_scale_factor = 0.005 # fraction of table size before analyze
  • Сохранить файл, нажав Ctrl + x и нажав y

  • Перезапустить postgresql

sudo service postgresql restart

После этого база данных будет расти понятными и умеренными темпами, и будет более предсказуема в размерах.