Недавно я обновил свой сервер MySQL с 5.1 до 5.6 (работает на CentOS 6.x). С момента обновления, когда я пытаюсь выполнить определенные табличные задачи, запросы занимают ДЕЙСТВИТЕЛЬНО много времени. Это действительно сдерживает мои итерации цикла разработки, потому что, когда тест занимает 1 секунду, это занимает 1-2 минуты, и это действительно убивает мою продуктивность.
Запросы, которые занимают очень много времени:
У меня такая же версия MySQL (5.6.15) установлена на моем локальном Mac. В данный момент я специально работаю над 6 таблицами, поэтому хочу часто обрезать эти таблицы. Когда я обрезаю их на своем локальном Mac, запрос занимает 21 мс (что вполне разумно). Когда я усекаю те же таблицы на своем сервере CentOS, это занимает 8,5 СЕКУНД. Все таблицы - это InnoDB.
Я пробовал использовать другие таблицы в той же базе данных на моем локальном Mac по сравнению с моим сервером CentOS, и для этих других таблиц сохраняется крайняя медленность. Итак, я вообще попробовал использовать другую базу данных, и крайняя медленность также сохраняется (восстановление одной из моих баз данных на моем локальном Mac занимает 25 секунд, а на сервере CentOS - 4 минуты 14 секунд).
Поскольку версия MySQL такая же, я подумал, что, возможно, это разница в конфигурации. Я экспортировал «переменные шоу»; запрос на CentOS и локальном Mac, и единственные различия (кроме таких вещей, как пути или имена файлов журнала):
innodb_use_native_aio OFF // local Mac
innodb_use_native_aio ON // CentOS
lower_case_file_system ON // local Mac
lower_case_file_system OFF // CentOS
lower_case_table_names 2 // local Mac
lower_case_table_names 0 // CentOS
have_symlink YES // local Mac
have_symlink DISABLED // CentOS