Есть специалисты по WordPress или PHP?

Подскажите, о чем речь.

SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) INNER JOIN wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id) WHERE 1=1 AND wp_term_taxonomy.taxonomy = 'category' AND wp_term_taxonomy.term_id IN ('1', '988') AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish') GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 0, 5

Сегодня уже три раза ложился сайт. Саппорт говорит, что дело может быть в этом запросе.
Заранее благодарен.

Записи по теме

About Артур Оруджалиев

123
This entry was posted in блог and tagged wordpress. Bookmark the permalink.
  • http://www.facebook.com/sergiy.koval Сергей Коваль

    WHERE 1=1 AND wp_term_taxonomy.taxonomy

    А зачем “1=1 AND”?

  • http://techiteasy.org.ua/ Andrii "Shlema" Degeler

    Тут ещё по MySQL специалист не помешает. =)

  • arturclancy

    Я не знаю где это и откуда, это мне прислала тех поддержка хостера:)

  • arturclancy

    Ситуация такова, что это привело сегодня 3 раза к падению сайта. При этом ни плагинов, ничего другого не устанавливалось

  • http://www.facebook.com/sergiy.koval Сергей Коваль

    Вопрос вообще к людям знающим MySQL

  • http://kuskov.com.ua alexander

    Без ошибки, которую возвращает запрос, трудно что-то сказать. Запрос как запрос. Ничего необычного. Можно конечно предположить что долго выполняется, и ложит сайт, но это зависит много ли данных в таблицах БД, и то,это только предположение.

  • http://twitter.com/vi_zhu vitaly zhuk

    Запрос конечно жесткий. Я не глубок в WP пока, похоже или “записи по теме” или “сейчас обсуждают”. По качеству кода: скорее всего – плагин. Если нет обновления я бі отказался и заменил.

  • aver

    Убрать SQL_CALC_FOUND_ROWS, он нужен для подсчета полного количества строк по данному запроса.
    Без доп. запроса к БД…
    Лучшее убрать и переписать код с дополнительным запросом SELECT count(*) FROM… на большых БД оно имеет смысл.

  • http://twitter.com/kolupaev Aleksey Kolupaev

    Артур, если у тебя есть достук к консоли MySQL – надо сделать EXPLAIN [твой запрос] – тогда станет хоть приблизательно понятно, что в этом запросе такого.

    Если саппорт на него пеняет – вероятно, это тяжелый запрос, который почему-то выполняется долго. EXPLAIN поможет понять, почему.

  • http://twitter.com/kolupaev Aleksey Kolupaev

    Чтобы все условия добавлять к запросу как .= “AND XXXX” и не морочить себе голову с тем, первое ли это условие (и, значит, надо написать WHERE) или не первое (тогда надо AND).

  • http://twitter.com/kolupaev Aleksey Kolupaev

    Боже, Артур, ты настроил свой diqus так, что все комментарии, которые я тебе пощу тут автоматически постятся и в мой твиттер? И после этого ты еще осуждаешь спамеров?

  • arturclancy

    Не-не-не
    Это твои настройки, ты видать галочку поставил, посмотри

  • http://twitter.com/panas_kiev_ua panas

    Проверь, что бы было включено кеширование.

  • http://sergeybiryukov.ru/ Sergey Biryukov

    Именно к такому запросу приводит вызов query_posts('cat=1,988&post_status=publish'). Сам по себе он не должен давать особой нагрузки: выбираются всего пять последних записей из рубрик с идентификаторами 1 и 988.

  • arturclancy

    Да, спасибо. Уже пришли к тому, что дело похоже в нем. Теперь думаю каак лучше реализовать.

  • arturclancy

    В общем, говорят, дело в кешировании

  • arturclancy

    )

  • http://www.facebook.com/kostyantyn.karpych Kostyantyn Karpych

    Не могу себя назвать специалистом. но увлекаюсь и тем, и другим.
    проблема скорее всего с количеством постов на странице.
    по-моему, в вордпресе по дефолту get_posts стоит “LIMIT 0, 6″, у тебя высвечитвает 0, 5, то есть количество постов на страницу, поэтому самый первый пост не кешируется…
    посмотри с той стороны.

    также поставь WP-Optimize, и почисть базы данных, бывает баг оттуда.

blog comments powered by Disqus