Как очистить базу данных wordpress
Как почистить и оптимизировать базу данных Вордпресс
Со временем в базе данных Вордпресс накапливается много лишней информации. Её объём иногда достигает таких размеров, что сайт начинает спотыкаться и может даже упасть. Сегодня я покажу несколько приёмов по очистке и оптимизации БД Вордпресс.
База данных Вордпресс напоминает шкаф, в котором хранятся все материалы сайта: посты, страницы, их ревизии, комментарии, в том числе и помеченные как спам, а также все настройки тем и плагинов. Поэтому, если сайт используется продолжительное время, скорее всего в его базе данных имеются данные, которые можно удалить.
Хранение бесполезных данных приводит к раздуванию базы данных. Например, зачем хранить настройки темы, которая была удалена много лет назад? Очистка базы данных не только освобождает пространство, но и способствует увеличению скорости работы сайта.
Для Вордпресс существует несколько различных способов оптимизации БД, я покажу несколько полезных запросов MySQL, которые можно выполнить в phpMyAdmin, например. А также расскажу про пару полезных плагинов, которые помогут упростить задачу.
Внимание: Перед любым действием с базой данных обязательно создать резервную копию.
Оптимизация базы данных Вордпресс с помощью phpMyAdmin
Существует несколько способов выполнения SQL-запросов в БД. Самым простым вариантом является phpMyAdmin. Получить к нему доступ обычно можно в панели управления хостингом в разделе «Базы данных».
Внутри phphMyAdmin сразу переходим в раздел SQL.
Здесь мы и будем выполнять все SQL-запросы.
Сразу обращаю внимание, в примерах ниже используется дефолтный префикс таблиц Вордпресс — «wp_» Поэтому, прежде убедитесь, что префиксы таблиц вашей БД такие же. Если нет — просто меняйте их в запросах на свои.
Удалить старые плагины и данные
Начнем с удаления оставшихся данных от удалённых плагинов. В таблице wp_postmeta также можно обнаружить много других ненужных данных, которые можно почистить этим же запросом.
Вместо META-KEY-NAME нужно указать ключи удаляемых плагинов. Их можно найти в таблицах БД.
Удалить все ревизии
Ревизии в Вордпресс очень полезная функция. Но если авторы активно ей пользуются, в БД сохраняется очень много копий постов, которые хранятся и после его публикации.
Удалить разом все ревизии можно таким запросом:
Удалить все комментарии со спамом
Иногда комментариев со спамом становится столько, что вручную их удалить уже не удаётся. С помощью одного SQL-запроса можно удалить сразу все комментарии помеченные как «Спам».
Удалить все неподтвержденные комментарии
Если не хочется удалять вручную все неподтвержденные комментарии, их можно как и спам удалить одним запросом.
Удалить все неиспользуемые теги
Удалить все теги, которые не связаны ни с одним постом можно следующим запросом:
Удалить старые шорткоды
Часто после удаления плагинов в базе остаются нерабочие шорткоды, которые приходится удалять вручную. Это тоже можно сделать одним SQL-запросом.
Где YOUR-SHORTCODE — удаляемый шорткод.
Удалить пингбеки и трекбеки
Интересно, кто-нибудь вообще ими пользуется?
Перед запуском убедитесь, что вы их отключили в админке.
Удалить временные опции
Временные опции в Вордпресс позволяют кешировать часть данных в БД. Но иногда этот кеш тоже может сильно раздуться. Очистить его можно одним запросом.
Оптимизировать таблицы
Раз уж мы зашли в phpMyAdmin, можно заодно проверить и оптимизировать таблицы. Делается это очень просто.
Выбираем все таблицы и нажимаем «Optimize table»
Оптимизация базы данных Вордпресс с помощью плагинов
Для Вордпресс существует ряд плагинов, с помощью которых можно почистить и оптимизировать базу данных. Самые эффективные из них: WP-Optimize и WP-Sweep.
WP-Optimize
Самый популярный плагин для оптимизации баз данных Вордпресс с более чем 600 тыс. активных установок. Очень прост в использовании, управляется одной кнопкой.
В разделе «Table Information» выводится информация по текущим размерам таблиц базы данных и объем, который плагин сможет освободить. В «Настройках» можно запланировать автоматическую оптимизацию БД. Например, каждую неделю, две недели или месяц.
Плагин WP-Optimize очень прост в использовании. Главное, не забудьте перед его использованием создать резервную копию сайта или хотя бы БД.
WP-Sweep
Набирающий обороты плагин от Лестера Чена — известного разработчика Вордпресс.
Плагин имеет интуитивно понятный интерфейс, сразу выводится подробный отчет о том, сколько ненужных данных содержится в базе данных. Можно сразу запустить полную оптимизацию, можно поэтапную.
В отличие от WP-Optimize, WP-Sweet для удаления использует функции Вордпресс, а не прямые запросы к базе данных. Это снижает вероятность пропуска каких-то ненужных данных. Однако, в WP-Sweep пока нет никакой автоматизации процессов.
В заключение
Я надеюсь, эта статья поможет вам оптимизировать и ускорить работу базы данных вашего сайта. Не забывайте перед внесением изменений в базу данных, всегда делать резервную копию сайта.
Делаю сайты на Вордпресс с 2008 года. Не просто сайты, а уникальные инструменты для решения сложных бизнес‑задач с оптимизацией и поддержкой.
Работайте в свое удовольствие!
Тысячи покупателей готовы платить за ваши навыки и таланты.
Присоединяйтесь к растущему комьюнити фрилансеров.
© 2008‑2021 Иван Данилин. Копирование запрещено
Политика конфиденциальности
Привет!Я буду вам признателен за лайки, они меня мотивируют.
Очистка и оптимизация базы данных

В этой статье вы узнаете, как очистить и оптимизировать базу данных с помощью SQL запросов в приложении phpMyAdmin на хостинге, и как очистить и оптимизировать базу данных с помощью плагинов.
Перед началом работы сделайте бэкап. Если что-то пойдет не так, вы сможете восстановить базу данных из бэкапа.
Удалите неиспользуемые плагины. Удалите все плагины, которые вы не используете. Остатки от удаленных плагинов — один из источников мусора.
Как делать SQL запросы к базе данных
Для администрирования БД обычно используется приложение phpMyAdmin, которое находится в хостинг панели. Найдите «База данных», «Database», «MySQL» или что-нибудь подобное. Откройте нужную базу данных.
Если вы забыли или не знаете название, логин или пароль к своей базе данных, то их можно узнать в файле wp-config.php, который находится в корневой папке сайта. Записи о базе данных находятся в самом начале файла.
Если у вас русский язык:
Если у вас английский язык:
Запросы создаются на вкладке SQL. Документация.
Делайте запросы здесь. Когда запрос готов, нажмите Вперед.
Если вы получили ответ, что 0 таблиц было изменено, то это значит, текущее состояние параметра соответствует запросу.
ЗАПРОСЫ
Удаление данных от удаленных плагинов и данные постов
После удаления ненужных плагинов в таблице wp_postmeta могут остаться записи от них. В этой же таблице находятся мета данные постов.
Создайте запрос для удаления неиспользуемых записей плагинов и постов, которые остались после удаления плагинов или постов.
DELETE FROM wp_postmeta WHERE meta_key = ‘ваш-мета-ключ‘;
Замените ваш-мета-ключ на нужное значение.
DELETE FROM wp_#_postmeta WHERE meta_key = ‘ваш-мета-ключ‘;
Измените # на ID сайта и ваш-мета-ключ на нужное значение.
Удаление спам комментариев
Удалить весь спам из бд можно этим запросом:
DELETE FROM wp_comments WHERE comment_approved = ‘spam‘;
DELETE FROM wp_#_comments WHERE comment_approved = ‘spam‘;
Измените # на ID сайта.
Удаление комментариев, ожидающих проверки
Если у вас много спама, ожидающего проверки, вы можете удалить его этим запросом. Перед удалением проверьте, чтобы не удалились нужные комментарии.
DELETE FROM wp_comments WHERE comment_approved = ‘0‘;
DELETE FROM wp_#_comments WHERE comment_approved = ‘0‘;
Измените # на ID сайта.
Удаление неиспользуемых тегов
Если у вас есть тег, который не связаны ни с одной статьей, удалите его этим запросом:
DELETE FROM wp_terms wt
INNER JOIN wp_term_taxonomy wtt ON wt.term_id = wtt.term_id WHERE wtt.taxonomy = ‘post_tag’ AND wtt.count = 0;
DELETE FROM wp_#_terms wt
INNER JOIN wp_term_taxonomy wtt ON wt.term_id = wtt.term_id WHERE wtt.taxonomy = ‘post_tag’ AND wtt.count = 0;
Измените # на ID сайта.
Удаление Trackback и Pingback
Если вы выключили эти функции и хотите удалить их записи из базы данных, используйте эти запросы:
Trackback
DELETE FROM wp_comments WHERE comment_type = ‘trackback‘;
DELETE FROM wp_#_comments WHERE comment_type = ‘trackback‘;
Измените # на ID сайта.
Pingback
DELETE FROM wp_comments WHERE comment_type = ‘pingback‘;
DELETE FROM wp_#_comments WHERE comment_type = ‘pingback‘;
Измените # на ID сайта.
Выключить эти функции в WordPress можно в Настройках — Обсуждения.
Удаление ревизий постов
Сохраненные версии постов хранятся в базе данных. Если у вас большой сайт, большое количество ревизий сильно увеличивает ее размер. Чтобы удалить их все, используйте этот запрос:
Замените # на ID сайта.
Удаление шорткодов плагинов и тем
Если вы пользовались каким-то плагином, который вставляет шорткоды, или вы сменили тему, в которой были встроены шорткоды, то теперь шорткоды появятся на сайте в виде текста. Чтобы удалить все записи о шорткодах из базы данных, сделайте этот запрос:
UPDATE wp_post SET post_content = replace(post_content, ‘[ваш-шорткод]‘, »);
UPDATE wp_#_post SET post_content = replace(post_content, ‘[ваш-шорткод]‘, »);
Измените # на ID сайта.
Удаление постов старше Х дней
Если вы хотите удалить посты старше Х дней, используйте этот запрос:
DELETE FROM ‘wp_posts’
WHERE ‘post_type’ = ‘post’
AND DATEDIFF(NOW(),’post_date’) > X-дней
Замените X-дней на нужное число дней.
DELETE FROM ‘wp_#_posts’
WHERE ‘post_type’ = ‘post’
AND DATEDIFF(NOW(),’post_date’) > X-дней
Измените # и X-дней.
Удаление других комментариев
SELECT FROM wp_commentsmeta WHERE comment_id
NOT IN (
SELECT comment_id
FROM wp_comments
);
Если вы хотите очистить таблицу wp_commentsmeta на другом сайте в сети, используйте этот запрос:
SELECT FROM wp_#_commentsmeta WHERE comment_id
NOT IN (
SELECT comment_id
FROM wp_#_comments
);
Замените # на ID сайта.
Оптимизация базы данных
Вы можете оптимизировать таблицы базы данных без использования плагинов.
В phpMyAdmin выберите нужную базу данных, спуститесь вниз, нажмите Отметить все и выберите Оптимизировать таблицу в выпадающем меню. Нажимать «Вперед» не нужно, оптимизация начнется автоматически.
Если ваша базы данных не помещается на одной странице, то вам нужно оптимизировать таблицы на каждой странице. Можно оптимизировать все таблицы, или только самые большие по размеру. Размер таблицы указывается в столбце Размер.
Пустой результат означает, что ничего не было оптимизировано, потому что таблицы уже оптимизированы плагином, который установлен на сайте.
База данных свежей установки Вордпресс 4.9.8 для сравнения
Плагины WordPress для оптимизации базы данных
4 лучших плагина оптимизации базы данных в порядке увеличения функционала.
Сделайте бэкап базы данных перед использованием этих плагинов. Некоторые из плагинов удаляют посты, имеющие статус Черновик. Убедитесь, что все Черновики опубликованы.
WP Sweep
Current Version: 1.1.5
Last Updated: 21.07.2021
WP Sweep (бесплатный) очищает базу данных от неиспользуемых и служебных данных и оптимизирует базу данных. Плюс плагина в том, что для оптимизации он использует стандартные функции удаления Вордпресс. Все просто и безопасно. Минус в том, что в нем нет расписания для автоматического сервиса.
WP Optimize
Current Version: 3.2.1
Last Updated: 30.11.2021
WP Optimize (бесплатный) — делает то же самое, но в нем есть автоматическое расписание очистки и оптимизации БД. Для оптимизации базы данных он использует прямые запросы к базе данных и оставляет после себя некоторые записи. Настроек минимум, подходит для новичков.
У плагина более 1 миллиона установок, регулярно обновляется, написан группой известных разработчиков.
В одной из последних версий в плагине появилось кеширование на уровне функционала плагина WP Super Cache и сжатие изображений.
Advanced Database Cleaner
Current Version: 3.0.3
Last Updated: 03.08.2021
Advanced Database Cleaner (бесплатный) аналогичен предыдущему, но есть мощный инструмент редактирования базы данных вручную, редактирования cron-расписания и редактирования таблицы options базы данных. Плюс в том, что есть все, что нужно, некоторый минус в том, что для оптимизации используются прямые запросы к базе данных.
Этот плагин, так же как и предыдущие, пропускает некоторые записи (например, от удаленных плагинов), которые можно очистить только вручную. Для того, чтобы очистить вручную, нужно знать, чему соответствует каждая запись в базе данных.
Advanced Database Cleaner Pro
Advanced Database Cleaner Pro (платный) имеет весь функционал бесплатного плагина и показывает, чему соответствует каждая запись в базе данных.
Описание некоторых терминов, которые используются БД.
Orphan post meta. Когда вы создаете новый пост, у него появляются мета данные. Это Автор поста, Категория поста и дата публикации или изменения. В некоторых случаях эти мета данные остаются в базе данных неудаленными и не относящимися ни к одному посту. Такие данные называются orphan post meta, их надо удалять.
Orphan comment meta. То же самое, что post meta, — комментарии, которые не относятся ни к одному посту. Нужно удалять.
Orphan relationships. Таблица wp_term_relationships содержит записи о связях между постами, которые связывали удаленные посты. Если вы удаляете контент на сайте, то связи между удаленными страницами остаются в этой таблице. Со временем эти записи наполняют таблицу и занимают место в базе данных. Удаляйте.
Dashboard transient feed. Это врéменные данные, которые хранятся в базе данных и имеют срок существования, после чего удаляются.
Заключение
После оптимизаци базы данных сайт должен начать работать немного быстрее. Бэкап будет работать быстрее. На больших сайтах с высокой посещаемостью после очистки и оптимизации базы данных сайт будет работать заметно быстрее.
Если вы будете использовать один из плагинов для автоматической очистки базы данных, не оставляйте неопубликованный контент на сайте. Многие плагины во время автоматической очистки удаляют неопубликованный контент.
Восстановление и оптимизацию базы данных можно настроить по расписанию. В зависимости от посещаемости и контента выберите 1 раз в месяц для восстановления и 1 раз в неделю для оптимизации.
Читайте также:
Надеюсь, статья была полезна. Оставляйте комментарии.
Как удалить записи WordPress, очистить базу данных и настройки сайта (+подборка модулей)

В принципе, проблем с редактированием контента в WP нет. Причем его правка непосредственно в админке защищает пользователей от потери данных, т.к. иногда содержимое можно позже восстановить из БД (в некоторых случаях информация просто «помечается» как удаленная, но по факту остается).
Как удалять записи в WordPress
Задача решается несколькими способами, причем для страниц и пользовательских типов объектов алгоритм аналогичен. Первым делом переходим в раздел админки «Записи» — «Все записи».
Здесь есть 2 подхода (поштучный и быстрый):
Для более быстрого массового редактирования в правом верхнем углу можете открыть функции «Настройки экрана» (где задается количество объектов на странице) и выбрать там отображение, например, по 100шт. вместо 20-ти по умолчанию. Таким образом, чтобы избавиться от 500-600 элементов вам нужно будет повторить второй способ всего 5-6 раз.
Защитные механизмы от случайных срабатываний:
Чтобы окончательно и бесповоротно избавиться от ненужного контента, переходите в корзину и кликайте «Удалить навсегда» (поштучно или через массовые функции).
Удаляем категории, медиафайлы и не только
Суть подхода похожа на работу с записями, но некоторые детали все же отличаются. Переходим в раздел админки «Рубрики»:
При наведении появляется привычная ссылка для удаления + есть массовые действия. Корзина здесь не предусмотрена, поэтому после нажатия появится всплывающее окно с запросом подтверждения вашего решения. Также следует учитывать, что выбранные категории/теги будут удалены из соответствующих публикаций.
Что касается медиафайлов, то у них имеется 2 формата отображения элементов:
В рубриках/тегах и медиа используется ссылка «Удалить навсегда», но если честно, не проверял остаются ли записи в БД, а файлы на FTP. В любом случае через админку их не восстановить, нужно будет создавать/загружать заново.
Очистка базы данных WordPress (в phpMyAdmin)
Вся инфа и настройки сайта хранятся в базе данных, поэтому редактировать определенные элементы можно непосредственно в ней. Но:
Если вышеперечисленное вас не пугает, то давайте разберем как быстро и легко очистить базу данных WordPress. Выполняется процедура через phpMyAdmin, который есть во всех хостингах.
Обязательно(!) в начале создайте бекап. Далее:
Здесь важно помнить — вся информация удаляется навсегда, поэтому делайте бекап!
Плагины очистки базы данных
Если вы новичок либо боитесь работать непосредственно в phpMyAdmin, вот парочка полезных модулей. Большую их часть найдете в репозитории по ключу «reset«. Обращайте внимание только на самые популярные, т.к. тема «щепетильная», и не хочется потом разгребать «косяки» разработчиков.
Advanced WordPress Reset
Наиболее актуальное из решений, апдейт был пару дней назад, 40тысяч загрузок приятно радует. Оно позволяет сбросить систему до «заводского состояния» без необходимости переустановки WP. Все параметры плагинов и ваши настройки удаляются, но файлы при этом остаются не тронутыми. Доступна поддержка мультисайтовости. Оценка 4.
WordPress Database Reset
Самый популярный модуль — в 2раза больше скачиваний нежели у предыдущего (80тысяч). К сожалению, он не обновлялся несколько лет, поэтому есть риск, что автор подзабил на развитие. Из особенностей — вы можете очистить базу данных WordPress целиком либо конкретную ее таблицу. Оценка 4.5.
Reset WP
Еще один способ решения текущей задачи с БД. Как и остальные, очищает только таблицы и ваши настройки, файлы не трогает. Все достаточно просто — в админке увидите лишь одно поле, куда нужно ввести ваш пароль для подтверждения действий. Загрузок 30к, обновление несколько месяцев назад.
WordPress Reset
Последний из популярных модулей в репозитории — 20тысяч установок. Из интересного — если в системе есть пользователь админ, то он автоматически будет восстановлен с тем же логином и паролем. Не знаю, возможно, в остальных случаях все работает также, но другие разработчики об этом не упоминали. Также сохраняется название блога. В FAQ описано как можно сделать дабы после сброса настроек WordPress автоматически подключились нужные вам плагины. К сожалению, решение обновлялось более 2х лет назад.
Итого:
Из модулей чаще всего упоминаются Advanced WordPress Reset и WordPress Database Reset. Если вас смущают некоторые негативные отзывы за последнее время, почитайте что именно пишут люди: часть из них жалуется на то, что какая-то информация была удалена, но ведь конкретные решения именно для этого и предназначены:)
Есть что добавить по теме или появились какие-то вопросы? — пишите ниже.
Очистить базу данных MySQL от мусора WordPress
Каждый начинающий веб-мастер работающий с WordPress рано или поздно сталкивается с замедлением загрузки сайта. Одной из причин, может стать раздутая база данных. Специально для решения данной проблемы и была написана эта статья, как очистить WordPress. В ней мы разберемся зачем чистить БД, как ее очистить от мусора и как часто это нужно делать.
Данная статья представлена из серии уроков по ускорении сайта на WordPress, которую вы можете прочитать у меня на блоге, и вооружиться не только методом описанным в данной статье, но и другими полезными советами.
Зачем чистить базу данных в WordPress?
Что бы понять смысл очистки базы данных нужно разобраться что в ней находиться. А находятся в нашей базе данных все наши настройки, посты, комментарии, мета данные, копии и редакции статей. На картинке ниже показаны основные (стандартные) таблицы в базе данных WordPress.
Как видим мы имеем 13 таблиц, предназначенных для разных целей. Практически каждая из этих таблиц могут содержать “мусорные” данные, которые замедляют загрузку наших страниц. Как это происходит? Все дело в том, что при “создании” любой страницы каждый элемент загружается из базы данных. Ищутся они по ключам к примеру по id, и чем больше у нас записей в каждой из таблиц, тем больше программе приходиться перебирать данных для поиска нужных нам в данный момент.
Говоря коротко, если у нас 1000 записей и в каждой по 5 комментариев, тогда после получения запроса к базе данных на отображение нужной нам страницы мы перебираем 1000 записей и 5000 тысяч комментариев в поиске именно тех которые требуются. Поиск происходит немного иначе, но вдаваться в детали мы не будем, не об этом статья.
Каждая из записей может иметь несколько копий и автосохранений, это еще больше усугубит ситуацию со временем ожидания ответа и загрузки страницы с сервера.
Выходит что очистив нашу базу от мусора мы значительно уменьшим количество данных которые будут перебираться и соответственно это займет меньше времени.
Это и есть основная задача, очистить WordPress и ее базы данных от лишней информации. Исходя из данного утверждения мы продолжим и разберем как очистить нашу БД.
Как очистить базу данных WordPress?
Для очистки базы данных от ненужных строк существует два способа:
Для первого метода очистки потребуется допуск до нашей базы данных на сервере. Так же потребуется знать что удалять, а что нет. Так же потребуется вводить SQL запросы для очистки и понимание основного их предназначения. Данный метод может неплохо потрепать нервы тех пользователей и владельцев сайта на WordPress которых смущает любое ручное вмешательство в код сайта и тем более в базу данных. По этому мы рассмотрим как ручную очистку так и очистку с помощью плагина.
Для второго метода очистки нам потребуется соответственный установленный плагин который поможет нам в решении данной проблемы. Таких плагинов существует огромное количество и отличаются они в основном авторами, рейтингом и внешним видом. В данной статье мы рассмотрим использование плагина WP Clean Up, который без особого труда справится с поставленной задачей. К тому же, плагины данного типа используются не постоянно. Это означает что после использования плагина его можно деактивировать или же удалить вовсе, иными словами использование плагина не повлечет за собой торможение загрузки.
Ручная очистка базы данных от мусора
Для того что бы очистит нашу базу в ручном режиме, для начала зайдем в наш phpMyAdmin с сервера, где расположен наш сайт. Далее переходим во вкладку SQL и вводим требуемые нам запросы на удаление записей.
После того как мы зашли в требуемое место вводим в форму требуемые запросы:
После ввода необходимой строчки нажимаем на кнопку “ОК”.
После чего еще раз подтверждаем наше действие.
При успешном выполнении запроса, наш Mysql сообщит нам результат проделанной работы, и сколько строк у нас получилось очистить.
Такие же действия повторяем для других таблиц.
Это основные моменты которые вам нужно будет знать для ручной очистки вашей базы данных. Теперь рассмотрим очистку с помощью плагина.
Очистка базы данных от мусора с помощью плагина
Как я уже упоминал ранее нам потребуется скачать и установить плагин WP Clean Up. Чем мы не посредственно сперва и займемся. Как установить плагин можно прочитать отдельно.
Произведя с админ панели wordpress установку плагина, переходим с пункта меню административной панели “Настройки” к управлению нашей очисткой.
Что мы видим? Абсолютно небольшой функционал, с теми же возможностями что и при ручной очистки, плюс несколько дополнительных.
Как мы видим, нам сразу представлена статистика по нашим таблицам из базы данных.
Как видим все очень просто, и не потребуется никуда лазить и прописывать запросы, а действия выполняются те же.
После того как мы провели очистку нам предлагают оптимизировать наши данные, чем мы так же и воспользуемся.
На этом наша очистка базы данных WordPress окончена. Теперь мы “чистенькие” и наш сайт работает быстрее.
Как часто нужно чистить базу данных WordPress?
Все зависит от того как часто обновляется ваш сайт. Если вы ежедневно пишите несколько статей и у вас появляется огромное количество комментариев, тогда и чистить базу данных можно ежедневно. Если же вы публикуетесь несколько раз месяц тогда и чистить можно так же один раз.
Если вы будете ежедневно очищать вашу БД от “шлака” и заведете себе такую привычку, тогда это будет только вам на руку, вы будете уверены что все у вас будет в порядке. Надеюсь вы разобрались как очистить WordPress от мусора.
Если вам понравилась данная статья вы можете ею поделиться в социальных сетях, а так же ознакомиться с другими нашими полезными уроками по WordPress.









