При любом подлючении к Postgres получаю ошибку — FATAL: sorry, too many clients already
By: Date: 24.10.2017 Categories: !RUS,PostgeSQL

With any connection to Postgres I get an error — FATAL: sorry, too many clients already.

При любом подлючении к Postgres получаю ошибку — FATAL: sorry, too many clients already.

Пытаюсь подключиться к Postgres любым способом и получаю ошибку — FATAL: sorry, too many clients already.

Ошибка возникает из-за того что превышено максимальное количество подключений. Для исправления нужно это количество увеличить. За это отвечает параметр max_connections в конфигурационном файле postgres (у меня этот файл — /etc/postgresql/9.6/main/postgresql.conf).

# cd /etc/postgresql/9.6/main
# nano postgresql.conf

У меня, по умолчанию max_connections = 100 увеличиваю до 300.

Так же может потребоваться увеличение количество выделяемой паммяти (параметр shared_buffers). Примерно 16КБ на одно соединение. Т.е. для моего случая 300 * 16 = 4800Кб или 4,7Мб. Но в версии 9.6 этот параметр уже равен 128Мб, т.е. я его не трогаю.

В файле конфигурации для каждого параметра, для изменения которого нужно перезагружать сервер, в коментариях есть примечание  — # (change requires restart). Поэтому требуется перезагрузка. Предварительно лучше выгнать всех пользователей из БД.

# service postgresql restart

Все работает. Желательно проанализировать почему количество соединений возросло.