Postgresql изменяет максимальное количество ссылок

PostgreSQL

задний план

   Сегодня коллега сказал, что не удалось подключить библиотеку PG среды разработки, и это подсказало «извините, уже слишком много клиентов». См. сообщение о том, что количество подключений библиотеки PG заполнено. Думая, что в нашей среде разработки есть много приложений, которые используют эту библиотеку PG, поэтому количество подключений часто бывает полным.Просто увеличьте максимальное количество подключений библиотеки PG в среде разработки и готово.В любом случае, это разработка. Библиотеки усердно работают над завершением работы и избегают ситуации, когда количество ссылок переполняется в будущем, что влияет на бесперебойность работы разработчиков.

процесс модификации

Просмотр максимального количества подключений

  Войдите в библиотеку PG среды разработки и выполните следующую команду, чтобы проверить текущее максимальное количество подключений к базе данных:

show max_connections;

Просмотрите путь к файлу конфигурации, где библиотека pg устанавливает max_connections

   Библиотека PG среды разработки, выполните следующую команду:

select name, setting, boot_val, reset_val, sourcefile from pg_settings where name = 'max_connections';

-- name = 配置项名字
-- setting = 配置项的value
-- boot_val = 配置项的初始化value
-- sourcefile = 配置项所在的配置文件的路径

Измените целевой файл конфигурации

   На предыдущем шаге мы нашли путь к конфигурационному файлу библиотеки PG для настройки максимального количества ссылок. Просто измените значение max_connections в соответствующем файле конфигурации. Но когда я захожу на сервер, где находится библиотека PG, по указанному пути нет файла конфигурации для библиотеки PG, и я моментально ошарашен. Тогда я подумал, что наша библиотека PG вроде бы запускается с докер-контейнером, а потом выполняется

docker ps

Конечно же, я увидел работающий контейнер библиотеки PG.   Удобно знать, что библиотека PG запускается как докер-контейнер. Есть два способа изменить файл конфигурации библиотеки PG:

  1. Войдите в контейнер и измените файл конфигурации библиотеки PG, найденный на предыдущем шаге.
docker exec -it {容器ID} /bin/bash

Однако может смущать отсутствие инструментов редактирования текста, таких как vi и vim, в контейнере докера. 2. Если целевой файл конфигурации не может быть изменен непосредственно в контейнере, мы можем использовать команду docker inspect для просмотра каталога, в котором целевой контейнер смонтирован на хост-компьютере, и перейти на хост-компьютер, чтобы найти конфигурацию целевой библиотеки PG. файл и измените его напрямую:

docker inspect {容器id} | grep Mounts -A 20

Перезапустите библиотеку PG

  Поскольку наша библиотека PG запускается док-контейнером, поэтому просто перезапустите соответствующий док-контейнер, команда выглядит следующим образом:

docker restart {容器ID}

   Если библиотека PG является обычным приложением, просто выполните команду перезапуска библиотеки pg на сервере:

pg_ctl reload

проверять

  Войдите в библиотеку PG и выполните команду, чтобы увидеть, изменилось ли значение максимального количества подключений на значение, которое мы только что настроили:

show max_connections;

Ссылаться на

База данных PG для просмотра текущего количества подключений и максимального количества подключений
postgresql изменить конфигурацию максимального количества подключений
docker: как просмотреть каталог монтирования контейнера Общие операции Docker — запуск, остановка, перезапуск экземпляров контейнера