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
Все работает. Желательно проанализировать почему количество соединений возросло.