MySQL 5.5 на сервере Windows работает ужасно медленно

Мне не повезло, что MySQL 5.5 работал так же быстро, как 5.1 или MariaDB на том же оборудовании / базе данных / среде под Windows server 2003R2 или 2008R2.

Мои тесты из нашего приложения:

MySQL 5.5 + CentOS 5.2 (XenServer Virtual) = 28 seconds (box is "busy" not buried)
MariaDB (5.1) + Windows 2003 (Physical box) = 130 seconds (box is 2% busy)
MySQL 5.1 + Windows 2003 (Physical box) = 170 seconds (box is 2% busy)
MySQL 5.5 + Windows 2003 (Physical box) = 305 seconds (As high as 600 seconds...) (box is 2% busy)

Единственная разница между этими запусками заключается в удалении скип-блокировки и запуске mysql_upgrade.exe для обновления некоторых таблиц для хранимых процедур на 5.5.

Да, я знаю, что это релиз-кандидат, и я передаю его обратно в MySQL.

Медленные запросы не регистрируются, он не думает, что он медленный, он просто есть.

Я собираюсь начать разбираться с самими запросами, чтобы посмотреть, не сработали ли планы INSERT/SELECT на 5.5.

2 ответа

Взгляните на http://bugs.mysql.com/59133. В большинстве случаев он может быть записан на диск (это означает, что окно занято на 2%, это серьезный совет). Возможно, после тщательного изучения вы захотите установить комбинацию

innodb_support_xa = 0

innodb_flush_log_at_trx_commit = 0 # или 2?

sync_binlog = 0

и посмотрим, что получится.

После того, как вы загрузите CPU, тогда имеет смысл использовать Win2008R2, некоторые улучшения, в частности, касаются Vista+

У меня была проблема на моем компьютере, запросы были более чем в 10 раз медленнее, чем на компьютере коллеги. Я использовал его my.ini файл, перезапустил сервер, и это решило проблему.

После нескольких тестов выясняется, что особая настройка, которая имеет огромное значение innodb_flush_method=normal (строка была добавлена, поэтому кажется, что мой сервер использовал какое-то значение по умолчанию).

Также линия sql-mode получил комментарий, но не знаю, изменит ли это что-нибудь.

Другие вопросы по тегам