MySQL замораживается на 40 секунд каждые 30 минут - PullRequest
0 голосов
/ 11 сентября 2018

Мы работаем с MySQL 5.6 в Windows Server 2008r2.

Каждые 30 минут он работает очень медленно в течение примерно 40 секунд, а затем возвращается в нормальное состояние еще на 30 минут.Это происходит как по маслу, когда каждое зависание происходит через 30 минут после окончания последнего.

Есть идеи?Мы в тупике и не знаем, где рядом искать.

Предпосылки / вещи, которые мы исключили ниже.

Спасибо.

• Наши первоначальные мысли были блокирующим запросом, но мы устранили это.

•Медленный журнал запросов показывает затронутые запросы, но с нулевым временем блокировки.

• Общие журналы ничего не показывают (кроме того, есть ли способ повысить уровень ведения журнала, чтобы заставить его вести журнал, когда он очищает кэш и т. Д. Что MySQL запускается каждые 30 минут?)

• Когда он работает медленно, он все еще работает, но даже простые запросы, такие как Select 'Hello World';занять секунду, чтобы бежать.

• В данный момент все операции MySQL выполняются медленно, включая инструменты мониторинга и особенно создание новых соединений.InnoDB и MyISAM одинаково затронуты.

• Мы перешли от использования массива SAN к использованию локального твердотельного накопителя, и это не сделало различий с исключением дисков / шпинделей.

• На машине установлена ​​конечная точка SophosЗащита, но это ничего не сканирует на дисках базы данных.

• Это похоже на то, как если бы машина была максимально загружена, но локальный мониторинг производительности показывает какие-то необычные показатели системы.ЦП, очередь диска, пропускная способность диска, память, сетевая активность и т. Д. Не отображаются.

• Машина является виртуальной машиной, работающей на VMware.Мониторинг гипервизора не показывает каких-либо проблем с производительностью, но я не уверен, что он достаточно детализирован, чтобы набрать 30-секундный скачок.

• Мы попытались настроить такие параметры MySQL, как размер кэша InnoDB, размер журнала и т. Д., И этоничего не изменило.

• Сервер запускает не что иное, как пару экземпляров MySQL.

• На остальные экземпляры это не влияет - насколько мы можем судить.

1 Ответ

0 голосов
/ 11 сентября 2018

Здесь есть несколько полезных советов по отказу сервера:

https://serverfault.com/questions/733590/mysql-stops-responding-periodically

Вы контролировали дисковый ввод-вывод? Есть ли увеличение времени ожидания ввода-вывода или транзакции в очереди? Возможно, что запросы в очереди в уровень хранилища из-за ограничения ввода / вывода, установленного вашим хостом. Также, Вы проверили, бьете ли вы своих максимально допустимых клиентов MySQL? Если эти запросы вдруг занимают много времени, это также возможно, что он не оставляет достаточно доступных соединений для нормальный трафик сайта, потому что другие соединения не закрываются быстро достаточно.

Я бы рекомендовал использовать IOSTAT и посмотреть, насыщаете ли вы свои диски. Он должен показать, все ли ваши диски загружены на 100% и т. Д.

...