Руководство по оптимизации базы данных WordPress

Статья последний раз была обновлена 13.06.2023

Каждый сайт на WordPress использует свою отдельную базу данных для хранения записей, страниц, меню, ссылок на пользователей, комментарии — то есть все формы текстовых и шифрованных данных. Но то, что вы загружаете через медиа-библиотеку, например, изображения, музыка, видео и другие файлы, не хранится в базе данных. Эти данные хранятся в папке wp_content.

Со временем база данных WordPress увеличивается в размере, генерируются разные мусорные данные, которые замедляют ее работу. В этой статье разберемся, как оптимизировать БД WP и очистить ее от ненужного мусора.

Зачем оптимизировать базу данных?

Сделайте резервную копию вашей базы! Если это возможно, убедитесь, что бэкап прошел без ошибок, например, установив копию сайта в локальном сервере (это в идеале).

Маленькая и оптимизированная база работает гораздо быстрее в сравнении с большой. База данных меньшего размера быстрее отвечает на запросы от WordPress, что в свою очередь ускоряет работу сайта не только для посетителей, но и для редакторов, пишущих и обновляющих записи.

Что такое «мусорные данные»?

Понятие «мусора» используется для определения информации, которая не нужна в базе данных. Например, таким мусором являются:

  • комментарии, отмеченные как спам;
  • неодобренные комментарии;
  • временные версии записей;
  • записи в корзине и ссылки на неприкрепленные изображения.

Как оптимизировать базу данных WordPress?

Из этого списка больше всего на базу влияют спам-комментарии и версии записей.

Избавляемся от лишних комментариев

Если у вашего сайта внушительное количество посетителей, и комментарии включены, то, скорее всего, у вас будет много спам-комментариев. Плагин Akismet отфильтрует спам и поместит его в отдельный список. При этом комментарии все еще будут в базе данных! А вам они совершенно не нужны. Все ненужные комментарии можно удалить в соответствующем разделе.

Как по мне, комментарии не дают никаких преимуществ, если у вас некоммерческий сайт. А колонка со спамом никогда не будет пуста. У вас может быть несколько одобренных комментариев, при этом пару сотен неодобренных (например сомнительные комменты с ссылками), и несколько тысяч в разделе «спам».

Отключаем ревизии постов

Что касается версий записей — практически тоже самое. Каждый раз, когда вы нажимаете на «Сохранить черновик» при написании записи, создается и сохраняется очередная версия поста. Особенно часто это происходит при написании длинных статей — вы пишете частями и постоянно сохраняете.

Представьте, что размер вашей статьи — 50 Kb, и вы сохранили ее 100 раз. Это 500 Kb места в базе данных для того, что должно занимать не больше 50 Kb. Это 450 Kb места, потраченного зря на одну длинную статью. Теперь представьте, что таких длинных статей у вас на сайте 100. Это 45000 Kb или 45 Mb мусора в вашей БД!

Надо сказать, что количество ревизий постов можно регулировать через специальные плагины или записи в wp-config.php — кому как удобнее, но я буду рассматривать только полное отключение с последующим удалением.

Избавиться от создания таких ревизий впредь можно с помощью моего плагина, но вот уже созданные версии (ревизии) статей придется удалить из базы вручную.

Как удалить старые ревизии записей в WordPress?

В таблице wp_posts (префикс у вас может отличаться) есть столбец post_type, нам нужно удалить все строки с данными из этой таблицы, у которых значения в поле post_type равны revision.

удаляем ревизии постов в WordPress

Иными словами, нужно выполнить вот такой запрос к БД:

DELETE FROM wp_posts WHERE post_type = "revision";

Аналогичную процедуру можно выполнить и с помощью плагина WP-Optimize.

Губарь Маргарита Александровна

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *