@ProkopovNikolai

MYSQL: скорость запросов на локальной машине и сервере. В чем отличия?

Столкнулись с проблемой 504 на сервер. Начали разбираться и нашли сложный запрос, который выполнялся на сервере около минуты. На локальной машине этот же запрос выполнялся менее 1 секунды. После оптимизации и добавления нужных индексов запрос начал выполнять 2-3 секунды на сервере.
Хотелось исключить вероятность того, что хостер ухудшил качество предоставляемых услуг и провели дополнительный тест. Создали дам базы на сервере (12Mб). Импортировали дам на локальной машине. Результат
Сб апр 6 09:35:26 MSK 2019 (начало)
Сб апр 6 09:37:57 MSK 2019 (окончание)
Остановили nginx на сервере и тоже импортировали дамп в базу
Сб апр 6 09:42:00 MSK 2019 (начало)
Сб апр 6 09:42:07 MSK 2019 (окончание).
Затем выполнили сложный запрос на локальной машине
100 rows in set, 145 warnings (0.31 sec)
и на сервер
100 rows in set (1.86 sec)

Может кто объяснить почему так происходит?

На локальной машине стоит
Mysql 5.7 - аналог MariaDB 10.2
На сервере
MariaDB 10.3 - аналог Mysql 5.8
  • Вопрос задан
  • 95 просмотров
Пригласить эксперта
Ответы на вопрос 2
@abmanimenja
После оптимизации и добавления нужных индексов запрос начал выполнять 2-3 секунды на сервере.

Индексы вообще-то должны были быть сразу "какие надо".
С чего вы решили, что ваша "локальная машина" близка по параметрам к серверу?
Тем более, если там виртуальный сервер - то ресурсы делятся на всех.

У вас то же железо?
Та же версия ОС?
Те же настройки MySQL?
Та же версия MySQL?

Полагаю, ответ на все вопросы - нет?
Ответ написан
ThunderCat
@ThunderCat Куратор тега MySQL
{PHP, MySql, HTML, JS, CSS} developer
Во первых - explain
Во вторых - смотрите настройки мускуля, вполне возможно что памяти например на запрос выделено мало и сложные выборки не помещаются в память, или наоборот, на локале выбрка кэшируется на более долгий срок и запрос у вас всегда "горячий".
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы