wordpressa.ru wordpress Wordpressa

Как очистить базу данных WordPress от мусора и ускорить сайт

Если сайт на WordPress стал заметно тяжелее, а база данных разрослась без видимой причины, чаще всего проблема не в “сломанных” таблицах, а в накопившемся мусоре: ревизиях записей, автосохранениях, спам-комментариях, временных данных и старых служебных записях. Это не всегда критично для маленького сайта, но на проектах с активным редактированием и большим количеством комментариев база быстро раздувается и начинает работать медленнее.

Очистка базы помогает не только освободить место. На некоторых хостингах это снижает нагрузку на MySQL, ускоряет резервное копирование и уменьшает время ответа на запросы, особенно если в таблицах уже накопились сотни тысяч лишних строк. Главное — удалять только то, что действительно является мусором, и делать это с резервной копией.

Что можно удалить без риска для рабочего сайта

Безопасная очистка базы WordPress обычно сводится к нескольким типам данных. Они либо не нужны для работы сайта, либо нужны только временно.

  • Ревизии записей и страниц — старые версии контента, которые WordPress сохраняет при редактировании.
  • Автосохранения — временные черновики, которые создаются во время работы в редакторе.
  • Спам-комментарии — комментарии, которые уже помечены как спам и не должны храниться бесконечно.
  • Корзина комментариев, записей и страниц — удалённые элементы, которые ещё не очищены окончательно.
  • Временные данные — transient-записи, кэшированные значения и устаревшие служебные опции.
  • Старые метаданные — например, записи, оставшиеся после удаления плагинов, если они действительно больше не используются.

А вот удалять всё подряд нельзя. Не стоит трогать таблицы вручную, если вы не понимаете, за что они отвечают, и не нужно чистить рабочие записи только потому, что они кажутся лишними. В WordPress много данных связано между собой: запись, её метаданные, термины, комментарии и вложения. Ошибка в ручной очистке легко приводит к потере контента или поломке плагинов.

С чего начать: резервная копия и проверка размера базы

Перед любой чисткой сделайте полную резервную копию файлов и базы данных. Это не формальность: если вы удалите что-то нужное или плагин очистки сработает не так, откат будет единственным безопасным способом вернуть сайт в рабочее состояние.

После этого полезно понять, что именно раздувает базу. В phpMyAdmin или в панели хостинга обычно видно размер таблиц. Если больше всего весят таблицы wp_posts, wp_comments, wp_options или wp_postmeta, это уже подсказывает направление:

  • wp_posts часто растёт из-за ревизий и автосохранений;
  • wp_comments — из-за спама и корзины комментариев;
  • wp_options — из-за временных данных и автозагружаемых опций;
  • wp_postmeta — из-за метаданных плагинов, редакторов и конструкторов.

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

Как удалить ревизии и автосохранения

Ревизии — один из самых частых источников разрастания базы. WordPress хранит историю изменений каждой записи, и если редакторы часто правят длинные статьи, количество ревизий быстро растёт. Автосохранения тоже занимают место, хотя обычно их меньше.

Есть два нормальных способа очистки: через плагин или через SQL. Если вы не работаете с базой вручную каждый день, безопаснее использовать плагин с понятным интерфейсом. Если нужен точечный и контролируемый вариант, подойдёт SQL-запрос в phpMyAdmin.

Для удаления ревизий можно использовать такой запрос:

DELETE FROM wp_posts WHERE post_type = 'revision';

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

Автосохранения обычно хранятся в той же таблице wp_posts как записи с типом autosave в зависимости от версии и сценария работы редактора, но на практике чистить их отдельно вручную обычно не требуется: они либо быстро перезаписываются, либо удаляются вместе с временными данными плагином очистки. Если вы не уверены, лучше не экспериментировать с ручными запросами и ограничиться инструментом, который показывает, что именно будет удалено.

После очистки откройте несколько записей в админке и проверьте, что редактор работает нормально, а контент не пропал. Если вы удаляли только ревизии, текущие опубликованные записи не должны измениться.

Что делать со спам-комментариями и корзиной

Спам-комментарии и комментарии в корзине — это мусор, который можно удалять без сожаления, если вы уже проверили, что среди них нет ложных срабатываний. На активных сайтах именно комментарии часто занимают неожиданно много места, особенно если антиспам работает неидеально.

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

Если комментарии давно не нужны на сайте, можно уменьшить будущий мусор ещё до очистки базы: отключить комментарии для старых записей, закрыть обсуждение на уровне настроек или ограничить срок хранения комментариев. Но это уже не чистка базы, а изменение политики сайта, поэтому делать это стоит только если комментарии вам действительно не нужны.

Очистка временных данных и старых опций

Временные данные WordPress и плагинов часто незаметны, но именно они со временем засоряют базу. Речь о transient-записях и устаревших опциях, которые больше не используются, но продолжают лежать в таблице wp_options. На небольшом сайте это может быть незаметно, а на старом проекте с десятками плагинов — уже ощутимо.

Здесь лучше не лезть в таблицу вручную без понимания, какие записи принадлежат ядру WordPress, а какие — конкретному плагину. Безопаснее использовать инструменты, которые умеют удалять просроченные transient-записи и показывают, что именно будет затронуто.

Если вы всё же работаете через SQL, сначала смотрите не на удаление, а на выборку. Например, можно проверить, сколько просроченных transient-записей накопилось, и только потом принимать решение. На практике для большинства владельцев сайтов ручная чистка этого слоя не нужна: достаточно нормального плагина обслуживания базы или встроенного инструмента хостинга.

Плагин или ручная чистка: что выбрать

Для большинства сайтов разумнее начать с плагина обслуживания базы, а не с прямых SQL-запросов. Это проще, безопаснее и позволяет увидеть, что именно будет удалено. Ручной способ полезен, когда нужно точечно убрать конкретный тип мусора и вы понимаете структуру базы.

СпособКогда подходитРиски
Плагин очисткиОбычный сайт, нет опыта работы с SQL, нужна понятная проверка перед удалениемМожет удалить больше, чем нужно, если не читать список действий
Ручной SQLЕсть доступ к phpMyAdmin, нужно удалить конкретный тип данныхОшибочный запрос может повредить данные
Инструменты хостингаХостинг даёт штатную оптимизацию и очистку базыНабор функций зависит от панели и тарифного плана

Если вы не хотите собирать процесс вручную, можно использовать подходящий инструмент обслуживания базы. Например, в Clearfy Pro есть функции, которые помогают убирать лишние данные и упрощают обслуживание сайта. Но даже в этом случае сначала смотрите, что именно будет очищено, а не запускайте всё подряд.

Как понять, что очистка действительно помогла

После удаления мусора не стоит ждать магического ускорения в два раза. Эффект зависит от того, что именно было в базе и насколько сильно она разрослась. Иногда выигрыш заметен сразу в админке и при сохранении записей, иногда разница выражается только в более лёгких бэкапах и меньшей нагрузке на базу.

Проверять результат лучше по нескольким признакам:

  • уменьшился размер таблиц в phpMyAdmin или в панели хостинга;
  • админка стала быстрее открывать список записей и комментариев;
  • сократилось время создания резервной копии;
  • в базе стало меньше ревизий, спама и просроченных временных данных.

Если после очистки сайт начал вести себя странно, первым делом восстановите резервную копию. Это особенно актуально, если вы удаляли данные вручную или запускали массовую очистку через плагин без предварительной проверки.

Что не стоит делать при чистке базы WordPress

Самая частая ошибка — удалять записи по принципу “всё, что похоже на мусор”. В базе WordPress много служебных данных, без которых сайт работает некорректно. Не удаляйте таблицы целиком, не чистите wp_options наугад и не запускайте запросы из случайных инструкций без понимания, что они делают.

Ещё одна типичная проблема — чистка без бэкапа. Если сайт рабочий и на нём есть заказы, заявки, комментарии или регулярно обновляемый контент, резервная копия обязательна. Даже безопасная на первый взгляд операция может дать неожиданный результат из-за особенностей плагинов, нестандартного префикса таблиц или старой версии WordPress.

Если база очень большая, а на сайте много плагинов, лучше чистить её поэтапно: сначала ревизии и спам, потом временные данные, затем уже смотреть на остатки в таблицах. Так проще понять, что именно дало эффект, и не потерять нужную информацию.

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

×
Твой WordPress — твои правила!

Топовые темы и плагины со скидкой 20%.

Забрать выгодно ⋙