Назад | Перейти на главную страницу

Почему MySQL заставляет процессор работать примерно на 80%?

Насколько я могу судить, MySQL без всякой причины съедает около 80% моего процессора. Прямо сейчас этот сервер используется редко, это скорее тестовый сайт, который я установил, который в конечном итоге будет использоваться для производства, как только я исправлю подобные небольшие проблемы. Я запускаю 3 экземпляра MySQL, но кажется, что мой первый экземпляр занимает весь процессор. Когда я выключаю первый экземпляр и оставляю два других включенными, все работает нормально.

Какие-либо предложения?

Я попытался Show Processlist и никакие операторы не выполняются, кроме "Sleep" и запроса "Show Processlist" (очевидно) в то время, когда он использует весь этот процессор.

my.cnf является основным. Я не оптимизировал и не менял никаких настроек MySQL. Как вы думаете, это может вызвать такое странное поведение?

Машина работает под управлением Linux Centos 5.7 64 бит и MySQL 5.0.95.

Спасибо

Убедитесь, что вы используете учетную запись с правами администратора при проверке выполнения запросов в MySQL. Обычно вы видите только свои собственные запросы. Если какой-то другой системный процесс играет в MySQL в фоновом режиме, это может быть неочевидно.

Учтите также atop чтобы увидеть соответствующую активность диска и innotop.

После тонкой настройки mySQL мне удалось снизить загрузку процессора с 90% до примерно 35%. Он простаивает так высоко из-за операторов select, которые используются для репликации на сервер sybase.

Программы, которые я использовал для тюнинга

mySQLtuner 1.2.0 от майора Хайдена

И

Учебник по настройке производительности mySQL, автор Маттер Монтгомери.