Контроль используемых соединений на mysql для отладки 'слишком многих соединений'

На рабочем сервере ЛАМПЫ я получаю 'слишком много соединений' ошибка от MySQL иногда, я хочу добавить контроль, чтобы найти, состоит ли причина в том, что я превышаю предел макс. соединений.

Мой вопрос: Как я могу запросить от mysql или от mysqladmin текущее количество используемых соединений? (Я заметил, что выставочное состояние дает общие соединения а не в настоящее время используемые.)

18
задан Nir 16 March 2010 в 09:51
поделиться

4 ответа

Очень мощный инструмент для мониторинга MySQL - innotop . Вы можете найти его здесь:

https: // github.com / innotop / innotop

В Debian Lenny он является частью пакета mysql-client-5.0 и, я думаю, доступен и для других дистрибутивов. Он особенно эффективен при мониторинге внутренних компонентов InnoDB, но также обеспечивает общий мониторинг сервера.

В режиме «Переменные и состояние» он контролирует переменные «Подключения» и «Макс_использованные_Соединения» (среди прочих). Он отображает абсолютные и инкрементные значения - последнее может дать вам представление о текущих подключениях.

Поскольку innotop предоставляет неинтерактивный режим, вы можете легко создать полностью автоматизированный мониторинг, вызвав innotop из некоторых настраиваемых скриптов, проверок nagios или любой другой системы, которая у вас есть.

17
ответ дан 30 November 2019 в 08:27
поделиться

http://www.mail-archive.com/monit-general@nongnu.org/msg00830.html

Взгляните сюда мат - может быть, это будет какая-то польза.

3
ответ дан 21 October 2019 в 21:28
поделиться

SHOW STATUS не отображает общее количество соединений: он отображает текущие соединения. Вы получаете сообщение об ошибке слишком много соединений, когда количество открытых соединений (неработающих или нет) превышает установленный для сервера лимит.

Судя по вашему комментарию о SHOW STATUS, похоже, что у вас на сервере много неработающих соединений. Это указывает на неправильное использование постоянных соединений; некоторые библиотеки, которые утверждают, что поддерживают постоянные соединения, не обрабатывают их должным образом, и они склонны открывать новые соединения, даже когда есть незанятые соединения.

Выясните, какое приложение выполняет такие запросы, и настройте его так, чтобы оно не использовало постоянные соединения.

2
ответ дан 30 November 2019 в 08:27
поделиться

Возможно, вам будет проще получить администратора MySQL , с его помощью вы можете легко отслеживать, откуда берутся используемые соединения. . См. Здесь о подключениях , используемых ...

1
ответ дан 30 November 2019 в 08:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: