Я установил MySQL 5.1.40 Распространение источника (64-разрядный исполняемый файл x86_64), следующий за этими instructions by Hivelogic и при использовании gem mysql (2.8.1) с использованием ARCHFLAGS = "- arch x86_64".MySQL чрезвычайно медленный под Snow Leopard
Я использую его для разработки Ruby on Rails, и моя проблема в том, что даже если MySQL работает во всех отношениях, он очень медленный.
Примите это сравнение с sqlite3 при выполнении стандартного рейка db: выполните миграцию, создав около 15 таблиц.
MySQL:
время грабли БД: мигрировать
реальные 0m4.882s
пользователь 0m1.426s
SYS 0m0.235s
sqlite3:
время rake db: migrate
реальных 0m2.282s
пользователя 0m1.501s
SYS 0m0.255s
Также нужно учитывать, что около 1.5s времени выполнения на каждый тест загрузка рамок рельсов, что означает, что sqlite3 выполняет SQL-задачи примерно 0,5-1 с, а MySQL требует более 3-х для одного и того же набора задач.
Не правда ли, что это просто неправильно? Что может быть причиной этого? Кто-нибудь испытывает ту же проблему?
Я установил и повторно установлен MySQL и MySQL/рубин драгоценный камень несколько раз, но всегда с тем же исходом ... :(
Моя установка Snow Leopard является обновлением, а не новая установка. Может ли это быть причина этой проблемы? Некоторые устаревшие библиотеки?
Спасибо!
Спасибо за ваш отзыв bbum! Единственное сравнение, которое у меня есть с другой платформой, заключается в том, что я запускал один и тот же тестовый костюм (который использует вышеперечисленный db: migrate) под Leopard, и теперь он значительно медленнее в Snow Leopard, время выполнения занимает около 1 минуты в Leopard и около 3- 4 мин в Snow Leopard. Я также заметил, что mysql, похоже, «задыхается», которого не было в Leopard.Если я попытаюсь вставить 200 записей - первые 30-40 идет молниеносно (~ 0,8 мс), но затем резко замедляется до ~ 200 мс на вставку, даже если сложность между первыми вставками и последними одинакова. – mrD
OK-- Я бы предложил использовать 'sample' на Leopard и Snow Leopard, чтобы получить вид обзора, где идут циклы CPU. Это также может быть связано с изменениями синхронизации диска между двумя ОС. В любом случае, обычно необходимо настроить базу данных на определенную систему. – bbum