SQL-запросы к базе WordPress: 5 ошибок, которые ломают скорость и данные
WordPress на MySQL часто тормозит не из-за хостинга, а из-за самого запроса. Типичные проблемы: • SELECT * вместо нужных полей • JOIN без фильтра по ключу • WHERE по функции, а не по индексу • сортировка по неиндексируемому полю • запрос к wp_posts без ограничений по типу и статусу.
Если нужен список записей, выбирайте только post_title, ID и post_date — не тащите весь ряд. Для поиска по меткам и категориям сначала проверяйте, можно ли решить задачу через WP_Query, а не сырым SQL: так меньше шансов сломать совместимость с плагинами и кастомными полями.
Перед запуском тяжелого запроса смотрите план выполнения. Если видите full scan на wp_postmeta, значит фильтр построен плохо. Частая ошибка — искать по meta_value без meta_key: таблица большая, а индекс почти не помогает.
Еще правило: сначала пишите запрос для чтения, потом для обновления. Сначала проверьте выборку через LIMIT, затем делайте UPDATE или DELETE. В базе WordPress одна лишняя строка в условии может превратить точечное действие в массовую правку.
Лучший SQL-запрос для WordPress — тот, который читает минимум данных, опирается на индекс и легко проверяется на тестовой копии.
Работа с БД WordPress
@wp_database_mastery_ww
SQL-запросы к базе WordPress: 5 ошибок, которые ломают скорость и данные
Этот пост опубликован в Telegram-канале Работа с БД WordPress. Подписаться можно по ссылке: @wp_database_mastery_ww.