Как почистить и оптимизировать базу данных вордпресс. Как очистить базу данных WordPress? Удаление данных от удаленных плагинов и данные постов

Здравствуйте, уважаемые читатели блога www.сайт. Если тексты статей на сайте, работающем на CMS WordPress, то очень скоро объем базы данных сайта увеличится многократно.

Дело в том, что начиная с версии 2.6 в WordPress был добавлен очень полезный и нужный механизм ревизий (редакций) записей.

То, что эта опция нужна, не вызывает сомнения. Навскидку можно представить себе несколько возможных причин потерять актуальное содержимое редактируемой записи. Это может быть сетевой сбой в момент обновления, перезапись устаревшей версией при редактировании из разных мест (у меня такое было), элементарная ошибка редактора и так далее.

Ревизии в WordPress позволяют избежать потери данных за счет того, что все предыдущие версии записей не удаляются из базе данных, а лишь получают другой статус — «revision »

В слове “все” предыдущего абзаца как раз и кроется причина неограниченного роста размера базы данных. Каждая редакция (ревизия) записи содержит ее полное содержание. А это значит, что если в процессе подготовки какой-либо статьи вы исправили и перезаписали ее, скажем, 10 раз, то в базе данных будет сохранено 10 копий. Если вы исправите всего один знак, в базу еще раз добавится текст целиком.

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

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

Управление количеством ревизий записей в WordPress

Для управления механизмом сохранения редакций записей в WordPress в файл конфигурации “wp-config.php ” после:
/** The Database Collate type. Don"t change this if in doubt. */
define("DB_COLLATE", ""); необходимо добавить всего лишь одну запись.
Для ограничения количества редакций тремя экземплярами:
define("WP_POST_REVISIONS", 3); Вместо “3” может быть любое нужное вам значение. “0” отключит сохранение ревизий. Такой же результат будет достигнут, если вместо цифры написать “false”:
define("WP_POST_REVISIONS", false);
Если по какой-либо причине нужно вновь разрешить сохранение всех редакций без удаления данной строки из “wp-config.php ”, то можно написать:
define("WP_POST_REVISIONS", true);

Тип ревизий записей в WordPress

В свою очередь редакции делятся на две категории:

  1. редакторские ревизии — предыдущие версии текстов, появившиеся после публикации или сохранения редактором (автором) обновленной записи;
  2. автосохраненные ревизии — автоматически создаются через определенные временные интервалы.

Как интересно. Пока писал этот пост заметил интересную особенность. Если запись находится в статусе «Черновик», то автосохраненные редакции у нее отсутствуют. Выходит, что на черновик автосохранение не распространяется. Стало быть, забывать нажимать на «Сохранить» при работе с черновиком в редакторе WordPress не стоит.

Количество автосохраненных редакций для записи всегда равно единице. То есть, если задать общее количество сохраняемых редакций равным, например, трем, то авторскими из них будут две. Автосохраненые ревизии никогда не перезаписывают авторские.

Автосохранение позволяет не потерять недавно набранные данные в том случае, если автор забыл сохранить их принудительно (получается, что на черновик это не распространяется).

Изменить интервал автосохранения можно добавив в файле конфигурации WordPress “wp-config.php ” строку:
define("AUTOSAVE_INTERVAL", 60); где 60 – интервал в секундах, соответствующий установленному по умолчанию. Его можно скорректировать в любую нужную сторону.

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

Если надо удалить все релизы, то сделать это можно без установки плагинов непосредственно в базе MySQL через phpMyAdmin.

Заходим в phpMyAdmin и выбираем нужную базу в левом столбце интерфейса. Начинаем, естественно, с .

Бекап базы данных

Переходим на вкладку “Экспорт”:

В открывшемся окне оставляем настройки без изменений. Нажимаем “ОК” в правой нижней части экрана и ждем завершения операции сохранения бекапа базы данных.

Запросы к базе данных на удаление ревизий и оптимизацию таблицы wp_posts

Переходим на вкладку “SQL”. В поле запросов к базе данных пишем:
DELETE FROM wp_posts WHERE post_type = "revision";
OPTIMIZE TABLE wp_posts;

Нажимаем “OK”, подтверждаем желание выполнить запросы к базе.

После успешного завершения запросов должно появиться сообщение такого вида:

При желании можно писать и выполнять запросы последовательно.

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

Лично я на этом бы уже и остановился – максимальное число сохраняемых релизов настроено, база данных очищена и оптимизирована. При желании, по прошествии некоторого периода времени, определяемого объемом сделанных на сайте изменений текстов, очистку базы описанным способом можно повторить.

Здравствуйте, друзья! Как известно не все что хранится в папках нашего сайта на хостинге действительно необходимо. За время существования сайта в его “закромах” скапливаются горы мусора, то есть множество ненужных для нормальной работы веб-ресурса файлов. Это может быть все что угодно - временные или неиспользуемые файлы, копии документов или забытые архивы.

То, что надо периодически оптимизировать базы данных или удалять ревизии постов и спам всем хорошо известно. Для тех, кто не хочет делать это вручную, даже придуманы удобные . Например, WP-Cleanup. Но все равно такая уборка не позволяет заглянуть во все углы и папки, хранящиеся на хостинге, и увидеть весь мусор. Лично я, в процессе экскурсии на хостинг по FTP, обнаружил на одном из сайтов два десятка, давно не используемых, zip архивов. Конечно, я их удалил, но подумал, вдруг у кого-то такая же история, поэтому решил написать эту небольшую статью.

Где прятались забытые архивы

Без лишних слов сразу покажу, что и где я нашел. Надо сказать, что этот мой блог на движке WordPress я редко посещаю, и за прошлый год опубликовал на нем всего лишь три статьи. Думаю, не стоит говорить, что его файлы на хостинге я проверяю еще реже. Тем не менее, в папке Uploads , рядом с папками, загруженных и отсортированных по месяцам, картинок, я обнаружил 19 zip архивов шаблонов и плагинов. Их я устанавливал когда-то в процессе всевозможных экспериментов по развитию этого блога. Причем большинство из этих плагинов и тем давно не используются и удалены. Полный путь к ним выглядел так: /public_html/wp-content/uploads .

Проверьте, может и у вас есть подобные лишние файлы. Кстати, интересно это узнать, так как на других своих сайтах я ничего лишнего не нашел. Хотя я примерно догадываюсь почему, но об этом позже. А пока соединяемся с хостингом по FTP с помощью и идем по указанному выше пути.

Конечно, много места эти архивы не занимают, всего лишь около 9 МБ. Но ведь, если активно развивать сайт в течение нескольких лет, то размер этой папки может быть гораздо больше. По любому, зачем нам мусор? Удаляем без тени сомнения и, таким образом, освобождаем место на хостинге. Кто не рискует, может сделать копии. У меня на работе блога это, естественно, никак не отразилось.

Теперь все выглядит аккуратненько, как и должно быть.

Освобождаем место в папке Uploads - удаляем лишние картинки

Кстати, как вы знаете, в той же папке Uploads на совершенно законных основаниях хранятся файлы изображений. Так вот, там тоже много мусора. Дело в том, что Вордпресс автоматически добавляет к вставляемым в посты картинкам 2-3 копии разных размеров. Поэтому неиспользуемые файлы можно удалить и, тем самым, значительно освободить дисковое пространство хостинга. Речь идет уже не о 9 МБ, а о сотнях и даже больше. Поверьте, лишние изображения занимают очень много места, особенно, если картинок большое количество. Вот, как это выглядит у меня на примере одного изображения.

Как видите, нужная картинка весит 28 КБ, а две ее копии, которые совершенно ни к чему, занимают еще 31 КБ места на хостинге, то есть размер увеличивается в 2 раза. Поэтому, когда вес папки с блогом станет критическим, вспомните, что его можно значительно снизить простым удалением копий файлов изображений. Только смотрите внимательно, иногда разные размеры бывают нужны. Например, для миниатюр.

Можно для удаления лишних картинок использовать специальный плагин DNUI Delete not used image .

Откуда взялись ненужные файлы?

Честно говоря, меня не особо волнует этот вопрос, но некоторые мысли есть. Скорее всего, эти архивы попадают в папку Uploads при установке тем и плагинов Вордпресс напрямую из админпанели. Раньше я пользовался именно этим способом. Архив загружается на хостинг, его файлы распаковывается в нужную папку, а он сам так и остается в папке загрузки.

Хотя сейчас попробовал для интереса установить пару плагинов через админку WordPress - ничего нового не появилось. К слову, мусорных файлов было не так много, так как за все время я устанавливал намного больше плагинов. Может не все из них оставляют после себя копии архивов? В любом случае, сейчас я загружаю файлы на хостинг через FTP соединение и ничего подобного не замечаю.

Какие у кого мысли на этот счет? Интересно, нашел еще кто-то в этой папке что-то не нужное? Поделитесь результатами своей проверки в комментариях.

На связи Илья Журавлёв, прочитав данную статью вы узнаете как очистить и оптимизировать базу данных wordpress. Со временем в базе данных скапливается много не нужного мусора, который может повлиять, к примеру, на скорость открытия вашего сайта. Базу данных нагружают не только установленные плагины, но и когда вы удаляете плагин, после него может остаться не нужный код, таблицы, строки. Не многие знают о ревизии постов, когда вы пишите статью, то wordpress, при каждом изменении записи, автоматически сохраняет черновик записи в базе данных. Представьте сколько таких черновиков сохраняется при написании одной статьи.

Те кто не занимается оптимизацией, то их мусор в базе данных превышает в 2, а то и в 3, 4, 5 раз по размеру основное содержание базы данных. Представьте, что ваша база данных весит 90 мегабайт, но необходимое и основное содержание базы данных весит всего 30 мегабайт, 60 мегабайт – это груз 200, то есть мёртвый груз, не нужный мусор. Удалите этот груз и ваш сайт полетит как сокол!

Начнём очистку и оптимизацию базы данных.

Сначала очистим базу данных с помощью плагина – WP Clean Up , очень простой и понятный плагин, не нуждается в настройках, нажмёте на кнопку и всё, лучший в своём роде. Установить данный плагин вы сможете прямо из админ-панели wordpress. Перейдите по вкладке: Плагины – Добавить новый , введите название плагина в форму поиска, нажмите Enter, установите и активируйте открывшийся плагин.

Чтобы настроить плагин, перейдите по вкладке: Настройки – WP Clean Up .

На странице плагина, в первом поле будут отображаться типы таблиц БД, которые можно очистить. Внизу нажмите на кнопку – Delete All , чтобы очистить сразу же всё. Внимание! Если на вашем сайте есть нужные вам черновики, то при очистке всех элементов одновременно они так же будут удалены. Чтобы сохранить черновики (Draft), удаляйте все элементы по отдельности, кроме элемента Draft, нажав на кнопку – Delete, напротив значения.

Во втором поле , у вас будут отображаться все имеющиеся таблицы в вашей базе данных и их размер. После очистки, вам нужно будет оптимизировать баз данных, то есть обновить. Нажмите на кнопку – Optimize . В поле Total вы можете наблюдать насколько изменилась в размере ваша база данных.

Как видно по скриншоту, во второй таблице у меня отображаются только 11 основных таблиц БД. У вас таблиц может быть гораздо больше от 50 до 100. Кроме 11 основных, присутствуют таблицы относящиеся к установленным плагинам и к удалённым. Далее я покажу как очистить БД от не нужных таблиц удалённых плагинов. После очистки БД можете деактивировать плагин – WP Clean Up . Периодически, раз в 3-6 месяца активируйте плагин и снова проводите очистку.

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


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

Навигация по странице:

Зачем чистить базу данных в WordPress?

Что бы понять смысл очистки базы данных нужно разобраться что в ней находиться. А находятся в нашей базе данных все наши настройки, посты, комментарии, мета данные, копии и редакции статей. На картинке ниже показаны основные (стандартные) таблицы в базе данных WordPress.

Как видим мы имеем 13 таблиц, предназначенных для разных целей. Практически каждая из этих таблиц могут содержать «мусорные» данные, которые замедляют загрузку наших страниц. Как это происходит? Все дело в том, что при «создании» любой страницы каждый элемент загружается из базы данных. Ищутся они по ключам к примеру по id, и чем больше у нас записей в каждой из таблиц, тем больше программе приходиться перебирать данных для поиска нужных нам в данный момент.

Говоря коротко, если у нас 1000 записей и в каждой по 5 комментариев, тогда после получения запроса к базе данных на отображение нужной нам страницы мы перебираем 1000 записей и 5000 тысяч комментариев в поиске именно тех которые требуются. Поиск происходит немного иначе, но вдаваться в детали мы не будем, не об этом статья.

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

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

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

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

Для очистки базы данных от ненужных строк существует два способа:

  • ручная очистка ;
  • очистка с помощью плагинов .

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

Для второго метода очистки нам потребуется соответственный который поможет нам в решении данной проблемы. Таких плагинов существует огромное количество и отличаются они в основном авторами, рейтингом и внешним видом. В данной статье мы рассмотрим использование плагина WP Clean Up, который без особого труда справится с поставленной задачей. К тому же, плагины данного типа используются не постоянно. Это означает что после использования плагина его можно деактивировать или же удалить вовсе, иными словами использование плагина не повлечет за собой торможение загрузки.

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

После того как мы зашли в требуемое место вводим в форму требуемые запросы:

  1. Для того что бы очистить копии(ревизии) наших записей требуется ввести следующую строчку: DELETE FROM wp_posts WHERE post_type = ‘revision’; что будет означать «Удалить все ревизии в таблице пост».
  2. Для очистки спама в комментариях потребуется следующая строчка: DELETE FROM wp_comments WHERE comment_approved = ‘spam’;
  3. Очистить кеш от RSS блога: DELETE FROM wp_options WHERE option_name LIKE (’_transient%_feed_%’);

После ввода необходимой строчки нажимаем на кнопку «ОК».

После чего еще раз подтверждаем наше действие.

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

Такие же действия повторяем для других таблиц.

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

Очистка базы данных от мусора с помощью плагина

Как я уже упоминал ранее нам потребуется скачать и установить плагин WP Clean Up. Чем мы не посредственно сперва и займемся. Как установить плагин можно прочитать отдельно.

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

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

Удаляем ненужный код

Самый большой мусор, наверняка, попадает в папки wp-uploads/ , и plugins/ , что неудивительно, ведь именно туда пользователю разрешено массово записывать. 🙂

Я часто захожу в панель управления других сайтов и блогов (по просьбе их владельцев), и зачастую вижу одну картину, — 20-30 установленных плагинов, из которых ~10 вообще не активированы, то есть лежат и просто расходуют квоту.

Чистка медиафайлов в библиотеке WordPress

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

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

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

Анализ расходуемого пространства

Есть такой плагин под названием Disk Usage Sunburst , который поможет вам увидеть занимаемый размер всего сайта, а также, чем именно он заполнен.

Плагин составляет круговую диаграмму из файлов и каталогов, формируя и сортируя их по размеру.

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

Оптимизация базы данных

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

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

Понравилась статья? Поделиться с друзьями: