SQL-запросы к базе WordPress ломают сайт чаще, чем кажется — вот 5 проверок
Перед любым UPDATE, DELETE или массовым SELECT делайте бэкап и сначала прогоняйте запрос на копии базы. В WordPress одна лишняя строка в wp_posts или wp_postmeta может затронуть не один экран, а весь сайт.
Проверьте WHERE-условие: без него UPDATE превращается в массовую правку, а DELETE — в зачистку таблицы. Для выборки используйте LIMIT, если нужен только пример данных. Для больших таблиц избегайте функций в фильтре по индексируемым полям: так запрос чаще уходит в полный скан.
Не работайте вслепую с wp_options и wp_postmeta: именно там чаще всего лежат автозагрузки, дубли и тяжёлые мета-записи. Перед правкой посмотрите EXPLAIN, порядок JOIN и размер выборки. Если запрос медленный, сначала ищите лишние соединения и wildcard в начале LIKE.
Для массовых изменений безопаснее дробить работу на части: сначала выбрать ID, потом обновить небольшими пачками. Так проще откатить ошибку и не держать базу в долгой блокировке.
Лучшее правило: сначала проверить результат SELECT-ом, потом запускать изменение, а после — ещё раз сверить затронутые строки.
Работа с БД WordPress
@wp_database_mastery_ww
SQL-запросы к базе WordPress ломают сайт чаще, чем кажется — вот 5 проверок
Этот пост опубликован в Telegram-канале Работа с БД WordPress. Подписаться можно по ссылке: @wp_database_mastery_ww.