powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ложится БД на хостинге
14 сообщений из 14, страница 1 из 1
Ложится БД на хостинге
    #38436211
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

Уже облазил весь инет как на рускоязычных так и на буржуйских, решения не нашел.

Проблема в следуещем

есть кусок запроса с модуля:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
SELECT count( * ) AS num
FROM ps_product p
LEFT JOIN ps__pf_price_index pi ON (
p.id_product = pi.id_product
AND pi.id_currency =1
AND pi.id_shop =1
)
INNER JOIN `ps_product_lang` pl ON ( p.`id_product` = pl.`id_product`
AND pl.`id_lang` =1
AND pl.id_shop =1 )
WHERE p.active =1
AND p.id_product
IN (

SELECT id_product
FROM ps_feature_product
WHERE id_feature_value =156821
OR id_feature_value =156820
OR id_feature_value =157081
GROUP BY id_product
HAVING count( id_product ) =1
)
ORDER BY pl.name


ps_product - 8тыс зап
ps__pf_price_index - 8тыс зап
ps_product_lang - 8тыс зап.
ps_feature_product - 70тыс зап

так вот когда выполняю этот запрос в phpMyAdmin он выполняет его несколько мин (~10мин), это на хостинге, выделенный сервер core i7 48 gb ram raid 7200

а на локалке меньше секунды выполняет с тойже базой

может у кого есть предположения? в какую сторону рыть?
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436212
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HAVING count( id_product ) =1
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436214
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HAVING count( id_product ) =1

вот если это убрать то летает, но результат соответственно не правильный)
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436232
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где DDL? а где explain? причём и на хостинге, и локально...
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436236
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
http://prntscr.com/1ytm1s на хостинге

http://prntscr.com/1ytmfd на локалке
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436245
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не пинайте меня сильно для меня DDL это открытие, так что я не знаю как им пользоваться, прошу помощи
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436252
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rusichbda http://prntscr.com/1ytm1s на хостинге

http://prntscr.com/1ytmfd на локалкеа не наоборот?
на одном из скриншотов упоминается индекс id_lang, на втором его нет.
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436260
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нет не на оборот, все именно так, не пойму почему они так разнять, ведь я бекап один и тот же использую
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436262
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
получается у меня не полный бекап на локалке?
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436264
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
зашел в таблицу ps_product и у них индексы абсолютно одинаковые

локалка http://prntscr.com/1ytzu9

сервер http://prntscr.com/1ytzxi
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436267
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rusichbda,

Попытался вчитаться в запрос, не получилось. Картина не складывается.
Опишите словами смысл этого запроса. Есть большое подозрение, что от таблицы ps__pf_price_index в нем можно избавиться.

Какие точные версии MySQL в обоих случаях?
Есть ощущение, что в локалке 5.6.*, а на хостинге более старая.
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436273
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftrusichbda,

Попытался вчитаться в запрос, не получилось. Картина не складывается.
Опишите словами смысл этого запроса. Есть большое подозрение, что от таблицы ps__pf_price_index в нем можно избавиться.


тут долго обяснять, тут запрос формируется как для колличства строк так и для выборки полей, просто в конце подстваляется разный селект, я пробывал все лишене убарать прирост +/- пару сотен милисекунд(на локалке) на серваке всеравно долго

miksoftКакие точные версии MySQL в обоих случаях?
Есть ощущение, что в локалке 5.6.*, а на хостинге более старая.

вы правы!
вот сервак http://prntscr.com/1yu1i6

вот локалка http://prntscr.com/1yu1mq
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436280
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rusichbdamiksoftКакие точные версии MySQL в обоих случаях?
Есть ощущение, что в локалке 5.6.*, а на хостинге более старая.

вы правы!
вот сервак http://prntscr.com/1yu1i6

вот локалка http://prntscr.com/1yu1mq О, а вот это интересно. Впервые вижу практическое подтверждение, что в версии 5.6 исправили баг с подзапросом в IN (SELECT ...). Его суть в том, что версии до 5.6 ошибочно считают подзапрос зависимым и вычисляют его столько раз, сколько нужно проверить записей во внешнем запросе.
Выходов два - обновлять MySQL на хостинге или переписывать запрос так, чтобы в нем не было IN (SELECT ...), например, через JOIN или через EXISTS.
...
Рейтинг: 0 / 0
Ложится БД на хостинге
    #38436283
rusichbda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
большое спасибо за ответ!!!
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ложится БД на хостинге
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]