Перейти к содержанию

Рекомендуемые сообщения

Добрый день!

Столкнулся с извечной проблемой - медленные запросы MySQL, установил дополнение "лог медленных запросов" и ужаснулся - некоторые зи них занимают до 10сек, самый распростроненный "SELECT DISTINCT *, pd.name AS name, p.image...Время выполнения: 1003.34мс

Однако! Когда я выполняю его в среде администрирования БД, результат великолепен: Запрос занял 0.0016 сек.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
44 минуты назад, MayanMan сказал:

в среде

попробуйте еще в четверг. может быть станет понятнее.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Была похожая проблема.


Обратите внимание на количество таких запросов.
У меня применялся шаблон, в котором модуль категорий в виде бокового меню строился нестандартно (Родительская категория -> Дочерняя -> Производители).
И для получения списка производителей, товары которых присутствуют в дочерней категории, использовались штатные методы, причем весьма не рационально.
В результате в цикле опрашивались все товары из категории.
Когда их было немного, то особых проблем не возникало, но когда их стало около 5000, то такое же количество запросов при построении меню начало загонять сайт в ступор.

Пришлось заменить этот глупый цикл на один единственный запрос и сайт зашевелился.

Для отладки запросов рекомендую Debug database queries, очень хорошая бесплатная штука!
Выводит все запросы на фронте и бэкэнде с возможностью сортировки по времени или порядку выполнения.
Можно выводить на экран и в лог файл.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашли решение вопроса? у меня такая же проблема

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, AntonMuxa сказал:

Нашли решение вопроса? у меня такая же проблема

Запрос приведенный ТС - это запрос выборки товаров в каталоге в админке - решается преписыванием запроса и расстановкой индексов.
В целом подобные проблемы решаются настройкой сервера, анализом запросов, уменьшением их количества и расстановкой индексов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 hours ago, snastik said:

Запрос приведенный ТС - это запрос выборки товаров в каталоге в админке - решается преписыванием запроса и расстановкой индексов.
В целом подобные проблемы решаются настройкой сервера, анализом запросов, уменьшением их количества и расстановкой индексов.

А если нет возможности настроить сервер ибо использую хостинг а не выделенный сервер. Индексы добавлял. А вот переписать запрос не подскажите хоть пример как он может выглядеть? ну или где почитать ? почему то думал что если opencart то у него должны быть адаптированы запросы - все таки там команда все дела

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

боже что вы просите то. Вы даже запрос целиком не привели, не говоря уже про статистику запроса

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

без полного текста запроса сложно судить

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
22 минуты назад, AntonMuxa сказал:

А если нет возможности настроить сервер ибо использую хостинг а не выделенный сервер. Индексы добавлял. А вот переписать запрос не подскажите хоть пример как он может выглядеть? ну или где почитать ? почему то думал что если opencart то у него должны быть адаптированы запросы - все таки там команда все дела

Поставьте модуль, на который я дал ссылку в своем посте.

Посмотрите какие запросы выполняются дольше всего.
Может их очень большое количество.

Отсюда можно плясать.

А так...
Иголка в стоге сена.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, AntonMuxa сказал:

А если нет возможности настроить сервер ибо использую хостинг а не выделенный сервер. Индексы добавлял. А вот переписать запрос не подскажите хоть пример как он может выглядеть? ну или где почитать ? почему то думал что если opencart то у него должны быть адаптированы запросы - все таки там команда все дела

 

Команда и унификация процессов - это не совсем совместимые вещи.
Индексы добавлял - это приблизтельно как. Сыграй мурку. А у меня не получается. Но я по клавишам нажимал на пианино.

Со всем уважением. Но ответ на ваш вопрос - как переписать запрос, из того же разряда, как сделать операцию на открытом сердце, краткая инструкция для стоматологов, как сделать капитальный ремонт двигателя mazeratti, у меня для этого все есть: гаечный ключ и молоток.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
54 минуты назад, freelancer сказал:

без полного текста запроса сложно судить

 

41 минуту назад, Wild сказал:

Поставьте модуль, на который я дал ссылку в своем посте.

Посмотрите какие запросы выполняются дольше всего.
Может их очень большое количество.

Отсюда можно плясать.

А так...
Иголка в стоге сена.

 

Учимся пользоваться поиском, товарищи, не стесняемся!

 

https://github.com/opencart/opencart/search?utf8=✓&q=SELECT+DISTINCT+*%2C+pd.name+AS+name%2C+p.image&type=

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
28 минут назад, snastik сказал:

Учимся пользоваться поиском, товарищи, не стесняемся!

https://github.com/opencart/opencart/search?utf8=✓&q=SELECT+DISTINCT+*%2C+pd.name+AS+name%2C+p.image&type=


И?
Не факт, что у человека именно проблема с этим.
Билли, нам нужна КАРТА!
MayanManДай лог времени и количества запросов!

UPD: Че-то я лоханулся понадеявшись на свою память и не прочитав стартовый топик.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 часа назад, snastik сказал:

Запрос приведенный ТС - это запрос выборки товаров в каталоге в админке

В каталоге в админке - т.е модель каталог админкм?

Не увидев полного запроса - сделать вывод о нехватке индексов - шикарно..

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 минут назад, chukcha сказал:

В каталоге в админке - т.е модель каталог админкм?

Не увидев полного запроса - сделать вывод о нехватке индексов - шикарно..

 

Ну я же показал ссыль на гитхаб откуда ноги растут.
Там реально не хватает индексов.
Но запрос вида select *.... и индексы.. ну уже простите. Выше я достаточно внятно описал методологию решения вопроса.

 

UPD....
И еще: в данном случае о каких индексах может идти речь, если это дешевый шаред, с зажатыми sort_buffer и key_buffer.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, snastik сказал:

Ну я же показал ссыль на гитхаб откуда ноги растут.

откуда запрос, я знаю и не нужно ссылки на гитхаб

ОТВЕТ был утверждающий
 

5 часов назад, snastik сказал:

Запрос приведенный ТС - это запрос выборки товаров в каталоге в админке

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, chukcha сказал:

откуда запрос, я знаю и не нужно ссылки на гитхаб

ОТВЕТ был утверждающий
 

 

Вы меня пугаете в последнее время нашим консенсусом!
Слава богу хоть кто-то знает. А не 3тр!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
20 hours ago, Wild said:

Поставьте модуль, на который я дал ссылку в своем посте.

Посмотрите какие запросы выполняются дольше всего.
Может их очень большое количество.

Отсюда можно плясать.

А так...
Иголка в стоге сена.

я ставил ваш модуль и у меня валились ошибки. Undefined offset 1 на этой строке $result = $this->database->query($text_sql, $params[1]);

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Версия OC?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
On 4/20/2018 at 5:00 PM, Wild said:

Версия OC?

OpenCart 2.3.0.2.3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Странно...
На странице расширения написано что поддерживаются версии вплоть до 3.
Но с этой проблемой скорее к автору модификации.
Попробуйте написать ему в комменты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.