Руководство по установке сервера S-INFO
×

20.4. Настройка параметров PostgreSQL для S-INFO

Для серверной части S-INFO рекомендуется увеличить параметры max_connections и max_locks_per_transaction.
max_connections задает максимальное количество одновременных подключений к PostgreSQL. По умолчанию это значение часто равно 100, но для серверной части S-INFO рекомендуется закладывать больший
запас. max_locks_per_transaction влияет на количество блокировок объектов, которые PostgreSQL может обслуживать в транзакциях; этот параметр особенно важен при миграциях, обслуживании базы и операциях, затрагивающих большое количество таблиц. PostgreSQL хранит обычные и advisory locks в общем пуле памяти, размер которого зависит от max_locks_per_transaction и max_connections, поэтому увеличивать эти значения нужно с учетом ресурсов сервера.
 

Для типовой установки S-INFO можно задать следующие значения:

sudo -u postgres psql -c "ALTER SYSTEM SET max_connections = '500';"
sudo -u postgres psql -c "ALTER SYSTEM SET max_locks_per_transaction = '5000';"
 

Перезапустите PostgreSQL:

sudo systemctl restart postgresql
 

Проверьте примененные значения:

sudo -u postgres psql -c "SHOW max_connections;"
sudo -u postgres psql -c "SHOW max_locks_per_transaction;"
 

Если PostgreSQL не запускается после изменения параметров, необходимо проверить журнал службы:

sudo journalctl -u postgresql -n 100 --no-pager
 

При необходимости параметры можно вернуть к значениям по умолчанию:

sudo -u postgres psql -c "ALTER SYSTEM RESET max_connections;"
sudo -u postgres psql -c "ALTER SYSTEM RESET max_locks_per_transaction;"
sudo systemctl restart postgresql