Оптимизация базы данных WordPress - это действие, которое несмотря на всю свою полезность, мало кем выполняется. То-ли в силу незнания особенностей базы данных (любой, кстати, базы данных), то-ли из-за отсутствия понятия обо всём этом в принципе...
Так или иначе, но думается мне, что далеко не все занимаются вопросами оптимизации базы данных своего блога.
Для чего нужна оптимизация базы данных WordPress
Вот же... Бывает, что прописные истины труднее всего объяснить... Я попробую.
В ходе ведения блога вы пишете и редактируете статьи, WordPress автоматически сохраняет их копии-редакции - это, так называемые, ревизии.
Вы добавляете и убираете какие-то метки для статей, а также их категории - это тоже всё накапливается и хранится в базе данных,
Вы устанавливаете и удаляете какие-то плагины, но при удалении таблицы уже ненужных плагинов далеко не всегда убираются из базы данных.
Ну и так далее, и тому подобное. Всё это раздувает базу данных, она становится неоправданно громоздкой, что, в конечном итоге, приводит к замедлению работы блога. А иногда и к ошибкам.
Вот почему периодически необходимо проводить оптимизацию базы данных WordPress.
Оптимизация базы данных WordPress
Не надо пугаться и сетовать, что я, мол, ничего в этом не понимаю. Не понимаете? Далеки от технической части? Ничего страшного - за нас всё сделает плагин. Их достаточно врепозитории.
Но здесь я покажу только один, бесплатный и полностью переведённый на русский язык. Этим плагином я пользуюсь сам и уже достаточно давно. Знакомьтесь:
Optimize Database after Deleting Revisions
Вот основные возможности плагина:
- Удаляет ревизии постов, страниц и / или пользовательских типов постов (можно выбрать удаление ревизий по условию …)
- Удаляет испорченные записи, страницы и комментарии (опционально)
- Удаляет спам-комментарии (опционально)
- Удаляет неиспользуемые теги (опционально)
- Удаляет «истекшие или все переходные процессы» (по желанию)
- Удаления «Pingbacks» и «трэкбэк» (опционально)
- Очищает «OEMBED кэш» (по желанию)
- Удаляет «элементы осиротевших PostMeta»
- Оптимизирует таблицы базы данных (опционально можно исключить из оптимизации определенные таблицы, или даже конкретных записей/страниц)
- Создает журнал оптимизаций (опционально)
- Оптимизация может быть запущена автоматически один раз каждый час, два раза в день, один раз в день или один раз в неделю в определенный момент времени (по желанию)
- «Оптимизация БД (1 клик)» ссылка на панели администратора (по желанию)
- «Database Оптимизировать» Иконка в меню администратора (по желанию)
- MultiSite совместимость: оптимизирует все сайты в сети одним щелчком мыши
Не стоит пугаться обилия возможностей. Практически все настройки плагина выставлены по-умолчанию. Чуть ниже покажу свои, можете выставить аналогичным образом.
Установка плагина
Тут всё как обычно. Плагин в репозитории WordPress, скачиваем, устанавливаем.
После установки, он появится в меню Инструменты.
Настройки плагина
Итак, открываем плагин...
Вот такая начальная страница, показывающая нам некую статистику и дающая возможность выполнить нужные нам операции.
- Изменить настройки
- Анализировать базу данных
- Начать оптимизацию
Давайте для начала изменим настройки:
Это первая часть настроек, думаю пояснять тут ничего не надо. Сохраняем изменения и прокручиваем страницу ниже:
Здесь настраиваем исключения - какие таблицы не должны, по нашему мнению, участвовать в оптимизации. Я ничего не исключал... Оптимизирую всё, что можно...
На всякий случай сохраняем настройки и здесь. Это нужно сделать только при самом первом запуске плагина. В дальнейшем, если всё устраивает, сюда, в настройки, можно и не заглядывать.
Оптимизация базы данных WordPress
Можно начинать оптимизацию, либо прямо из страницы настроек, либо вернувшись на первую страницу плагина и нажав соответствующую кнопку.
Да, с первой страницы можно ещё и анализ базы запустить... Плагин предварительно оценит свою последующую задачу и выведет информацию об этом. Я редко этим пользуюсь, обычно жму «Начать оптимизацию» и всё.
Итак, начинаем оптимизацию... Если вы думаете, что это сколько-нибудь длительный процесс, то вы глубоко заблуждаетесь... Буквально несколько секунд!
Вот это 53-х секундное видео наглядно демонстрирует процесс оптимизации. После первичной настройки, о которой я говорил выше, оптимизация базы данных WordPress сводится к одному клику по кнопке и 5-ти секундам процесса! Остальное время в видео потрачено на всякие заставки и созерцание результата...
По итогу будет показан результат. Этот скрин сделан с другого моего сайта, на котором запуск плагина был осуществлён впервые...
Посмотрите на цифры "До" и "После"... Впечатляет?
Конечно, надо понимать, что при периодической оптимизации базы данных WordPress, показатель "Сбережено в этот раз" будет значительно меньше. Это логично и правильно. Хотя... Всё зависит от той самой периодичности оптимизации.
Периодичность, кстати, вы определяете сами, в зависимости от интенсивности работы с сайтом. Я, например, при своей достаточно вялой активности здесь, запускаю оптимизацию базы данных где-то раз в месяц...
Запускаю вручную, хотя в настройках плагина можно настроить планировщик от "ежечасно" до "ежемесячно". И тогда оптимизация вообще не потребует вашего участия.
Подводя итог сказанному
Оптимизация базы данных WordPress - очень важный аспект работы с блогом. Не стоит этим пренебрегать.
Я уже не говорю о ситуациях, наподобие этой, последующая оптимизация очень выручает.
Оптимизируйте свои базы данных. Тем более, что ничего сложного тут нет.
Я не держу плагин постоянно активным. По мере необходимости активирую, запускаю оптимизацию и деактивирую. На этом блоге...
А на другом работает планировщик.
Для себя вы можете выбрать тот вариант, который устроит именно вас.
Да, плагинов, подобных Optimize Database after Deleting Revisions, о котором я тут рассказал, есть немало разных. Я не преследую цель принизить качества иных плагинов, когда-то и сам использовал другой. Но за давностью лет уже не помню какой именно.
Дело даже не в том, какой именно инструмент вы используете - главное ведь конечный результат.
Ну, а если вы не используете ничего для оптимизации базы данных своего блога, то переубеждать не буду. Однако подумайте, ведь на самом деле всё быстро и несложно, а польза есть несомненная.
Удачи вам!
Александр, спасибо Вам за эту статью!
Будто для меня специально написано:) В свое время я отладила сайт, проверила по гугл спид что все летает и успокоилась на пару лет как минимум. Сейчас случайно вдруг обнаружила, что «рожденный ползать летать не может «:))) Обратилась к хостеру с этой проблемой, подключили мне профайлер, жду теперь что скажут, хотя подозреваю, что ответ будет настолько насыщен техническими терминами, что я вряд ли пойму:) Возможно, беза заспамилась и почистить надо, хотя я особой активности не проявляла на сайте. Все равно дождусь отключения профайлера и попробую оптимизировать БД:)
Елена, здравствуйте! Скорость загрузки зависит от многих факторов. У Вас на главной странице множество изображений… Они, кстати, оптимизированы? Может подумать их организацию при помощи какой-нибудь галереи? Тогда им не надо будит грузиться всем одновременно.
Может быть у вас какие-то скрипты ещё установлены, да мало-ли факторов… Надеюсь, хостеры подскажут, да и в Google Speed тоже ведь рекомендации выводятся, их посмотрите…
А оптимизировать базу данных в любом случае не помешает…
Пошла у себя проверять скорость, вообще жесть…
Интересно получается: год назад скорость была на среднем уровне, теперь – упала. Хотя сайт грузится на компе довольно быстро по ощущениям. На телефоне тоже.
Елена, а как Вы скорость замеряете? Если через соответствующий сервис от Гугла, то я давно пришёл к выводу, что он выдаёт недостоверную информацию. И перестал им пользоваться. Он пиарит плагин для мобильных устройств, отзывы об этом плагине негативные в основном, но его отсутствие на сайте является сигналом для Гугла, что тут всё плохо.
Я зашёл на ваш сайт – всё довольно быстро. Не думаю, что у Вас есть повод переживать.
А оптимизацию БД ещё не пробовали?
Спасибо за ответ – поддержку! Да, этот самый, Page Speed от гугла. Им проверяла. И меня насторожило сообщение после проверки, что недостаточно данных о фактической скорости загрузки страницы. Это ж как тогда он оценивает, если данный недостаточно? Даже человек понимает, что если он не владеет всей информацией, то невозможно оценить правильно (хотя… далеко не каждый человек понимает, но не будем углубляться))))
Здравствуйте, Александр. У меня на сайте установлен плагин оптимизации Webcraftic Clearfy. Но не пойму работает он или так просто простаивает. Когда устанавливала включала какие-то настройки по рекомендациям на одном из сайтов. Кстати, я почему-то думаю, что про этот плагин я на вашем сайте и прочитала. Или не на вашем, может у Константина Вервекина.
Валентина, здравствуйте!
У меня он тоже установлен. Но он занимается другими вещами и не призван оптимизировать базу данных. Хотя и там, и там присутствует слово "оптимизация", но каждый из этих плагинов выполняет свою задачу. Они не пересекаются…
А что значит "он просто простаивает"?
Да, возможно Вы о нём у меня и прочитали, вот эта статья… Посмотрите настройки, вот те задачи, которые Вы в настройках выставляли, разве не выполняются?
Плагин Optimize Database after Deleting Revisions, о котором я рассказал в этой статье, оптимизирует саму базу данных – это совсем другая ипостась…
Как говорится: "Есть много, друг Горацио, такого, что и не снилось нашим мудрецам."…
Да, верно, тот плагин я по вашей статье ставила. Пожалуй я и сегодняшний плагин себе установлю. Давно уже подумывала, как бы удалить многочисленные копии-редакций постов.
Саша, привет! Поставил плагин и оптимизировал свою базу. Так что спасибо за статью и напоминание.
Привет, Андрей! Хороший плагин, мне нравится. Шустро работает. Настройки менял? В ручном режиме или на автомат поставил?
Настройки поставил твои. И почистил в ручном режиме.
Спасибо, Александр!
Но мой "блох" так запрессовали, что не до WordPress
С уважением Юзеф Печурчик
Юзеф, я просто рад Вас здесь видеть!
Александр, здравствуй! Тоже использую много лет плагин Optimize Database after Deleting Revisions. Помню, в первый раз отчет плагина по эффективности сэкономленного места поразил. В последующие запуски такого уже не было. Даже удаление нескольких сотен ревизий сейчас не отражается на размере базы.
Здравствуй, Константин! Ну да, в последующие разы запуск оптимизации показывает результаты скромнее, чем в первый раз. Хотя, конечно, с какой периодичностью запускать.
Но тем не менее, считаю, что в любом случае – это полезно…
Добрый день, Александр!
Спасибо Вам за ответ!
да, картинки оптимизированы плагином и они в футере расположены, то есть в последнюю очередь подгружаются. А хостер дал как я и подозревала:) технический ответ и отослал на хабр (айтишный форум) ну вообщем темный лес:)) боюсь что ситуация безвыходная в данном случае, тем более что и на другом сайте, где нет множества картинок, ситуация такая же.
Еще интересно спросить не по теме:) у Вас на блоге почти нет партнерок. Почему? У в всех сайты увешаны партнерками как елки новогодние:) а у Вас нет, почему?
Так проблема-то на сайте в чём?
У меня тоже есть, от Google Adsense… Я вставил их скрипт и рекламные блоки выводятся самой системой Google Adsense, а не мною. Я вообще не сторонник изобилия рекламы, надо же и читателей своих уважать. Да и не в деньгах счастье…
Александр, воспользовалась рекомендованным плагином. Я под впечатлением, очистилось 53,905 МВ. Спасибо за рекомендацию.
Ну вот видите, значит не зря советовал…
У меня стоит этот плагин и я периодически делаю оптимизацию. Сейчас переделала кое-что в настройках по вашей статье. Результат есть. Последнее время почему-то у меня много спама, плагин Акисмет ловит спам и я его удаляю, но вероятно в базе где-то он оставался. Сегодня после оптимизации весь спам удалился из базы данных. Спасибо Саша.
Алевтина, Акисмет далеко не лучший плагин против спама. Я от него отказался уже несколько лет назад.
Здравствуйте, Александр! У меня стоит WP-Optimize. Поставила не так давно. Он пишет, что надо обязательно перед оптимизацией базы данных сделать резервную копию. Обязательно каждый раз делать? В принципе, резервные копии и так каждый день делаются. Что Вы скажете о моём плагине? Не надо его сменить?
Ольга, я не готов сравнивать два плагина, ибо пользуюсь тем, о котором рассказал. Вы же не думаете, что я знаю всё и обо всём?
Посмотрел описание WP-Optimize… судя по нему, возможности аналогичны Optimize Database after Deleting Revisions… так что, если Вас устраивает Ваш, то какой смысл его менять? Я же написал в статье:
По поводу копий перед каждым запуском плагина… Ну многие плагины, влияющие на базу данных, предлагают перед запуском сделать резервную копию. Типа, наше дело предупредить…
Если он у Вас работает нормально, то скорее всего нет необходимости каждый раз создавать резервную копию. По крайней мере, я не делаю…
Здравствуйте, Александр! У меня уже давно стоит WP-Optimize, но удаляет почему-то не все, что сам же показывает для удаления. Даже ревизии постов удаляет не все. Я уже задумывалась над тем, чем его заменить, но искать что-то просто руки не доходили. И вот Ваша статья – как отклик Вселенной на мой запрос 🙂
Спасибо за плагин. После "оптимизации" с помощью WP-Optimize, это плагин очистил мне еще 8,5 мб мусора. Не так много, но приятно.
Вот я только не поняла, что такое он почистил: DELETED OEMBEDS. Подскажите, пожалуйста!
Нина, здравствуйте!
Все вставки, использующие oEmbed, например видео, создают свой отдельный кеш.
В настройках плагина этот момент выглядит так: Clear oEmbed cache
Таким образом, удаляется кеш этих вставок, сами видео, естественно остаются и никуда не деваются…
Александр, благодарю за подробный и ценный материал! У меня стоит другой плагин, но склоняюсь к вашей версии она понятнее и проще!
Он действительно простой и быстрый. А выполняет всё довольно качественно.
Поняла, спасибо!
Саша, добрый вечер. Все довольны, все почищенные и оптимизированные))).
А у меня что-то не сложилось. Скачала, поставила плагин, настройки все установила, как у тебя сделала оптимизацию. Результат:
Нечему радоваться Почему так? Может у меня уже она выполняется как-то? Но я не увидела таких плагинов. Что скажешь?
Добрый вечер, Люда… У меня есть доступ к твоей админке, но обрезанный какой-то, там я, кроме своего профиля ничего не вижу. Вообще для чего такой доступ? Убери его нафиг вообще.
Смог бы зайти – посмотрел бы что у тебя происходит, а так гадать какой смысл?
Нет доступа, с чего ты решил? И почему он должен быть?) И зачем заходить? Думала что-то можешь предположить? Значит всё оптимизировано. Спасибо.
Ты мне когда-то давала, помнится… Ну раз нет, так нет.
А что это мы все тут без аватаров? Потому что у тебя новый?
Я тут кеш граватаров почистил… Теперь он заново как скешируется, так всё и появится. В смысле граватары…
Привет, Саша!
А я до сих пор использую WP CleanFix на своих сайтах. Я говорил о нём в одном из обзоров четыре года назад. Он тебе тогда не приглянулся… Единственный минус этого плагина, на мой взгляд – нет русского перевода. Но, при желании, можно и англоязычный плагин настроить. Однако, плагин Optimize Database after Deleting Revisions возьму на заметку.
За статью Спасибо, очень полезная для меня информация!
Миша, здравствуй! Ну я же и говорю – подобных плагинов хватает, каждый использует тот, который ему нравится. Главное – результат!
Саша, привет! Ты для меня прям Америку снова открыл… Я и понятия не имела, что можно оптимизировать БД………. Займусь на днях, потом отпишусь. Ладушки? У меня тут трава выше бровей вымахала после ливней и все зашибись. Как в сказке, чем дальше, тем веселее. У нас сегодня +26. Капец короче, долго не пробудешь на огороде, максимум до 9ти утра, но я мужественно час назад ушла оттуда. Мося загорела, а точнее сгорела, как на юге. Зато треть огорода выпластала от травы. Как у тебя там погода, чего шепчет? Лайки от души, хотя ко мне на Фб уже почти никто не заглядывает, даже американские полковники отцепились и перестали предлагать дружбу. )
Хорошо, что у меня нет ни сада, ни дачи…
А что это американские полковники вдруг так сдулись?
С другой стороны, к тебе русский полковник заглядывает, тебе что, мало? Американского подавай?
Надя, как твоя база, оптимизировалась или не приступала ещё?
Это хорошо, что у тебя нет сада и дачи…. Утяпалась 9 мая. зато вычистила тучу травы. А вечером грянул ливень аШ 3 раза и я вспомнила. как бабуля говорила, когда дождь шел на 9 мая: погода плачет по погибшим, слезы с небес…
А я им начала объяснять, что я ругаюсь оч часто короткими и длинными адресами И когда меня несколько штук достали своими сообщениями, кстати на английском сообщения были, я задала вопрос: вас по короткому или по длинному адресу отправить? Мне на отличном русском ответили: Я услышал, больше не потревожу. Все они понимают и русским отлично владеют.
А заглядывалют они (заглядывали) на будущее бегство, на одном форуме англоязычном прочла: Искать нужно русских и постепенно уезжать. У них же там какой-то прогноз, что Америка типа вся затонет….
Ты наш единственный Полковник, мы тя Абажаем.
Саша, даже не начинала, у меня сейчас лидерская в огороде, осталось чуточку, если дождя не будет завтра и послезавтра. А потом переды тяпать возле забора… Сделаю, отпишусь здесь.
Ну да, есть такой прогноз… А что, не могли они напрямую у тебя спросить, мол так и так, Надя, затонем мы тут скоро все… Не могла бы принять нас к себе, мы тебе огород весь вычистим…
Отличная информация, последую Вашему совету.
Думаю, не пожалеете. Плагин действительно стоящий…
Для оптимизации базы данных я тоже использовал плагин. Но пару месяцев назад, после очередного обновления, он почему-то перестал нормально работать. Весь "мусор" почему-то не отображает. Надо будет ваш плагин попробовать.
Попробуйте, Сергей. Это плагин работает без нареканий и после всех обновлений движка…
Александр, тоже очень полезная информация, спасибо, займусь тоже этим вопросом. Конечно, как мы везде и во всем порядок наводим время от времени, выбрасываем мусор, так и с базами данных надо это делать, много ведь лишнего со временем накапливается. Очень полезный обзор, вернусь еще к этой статье!
Оптимизация баз – дело полезное, этим стоит заняться… Тем более сложного тут ничего нет…
Я посмотрела, оказывается у меня подобного плагина нет, поэтому установила плагин на оба сайта, провела оптимизацию, и мне выдали такой результат http://prntscr.com/nojm2m ( на старом сайте) и http://prntscr.com/nojjaj (на новом сайте).
Меня удивило, что там нули после оптимизации. Александр, я что-то неправильно сделала?
Таисия, а настройки Вы как у меня выставили? Вполне возможно, что у Вас работает какой-то аналогичный плагин…
Гыыы! Вчера снесла неиспользуемый плагин WP-Optimize. В основном он чистил коммеетарии в спаме, но я это и сама делаю. А остальное – совсем немного весило, как я помню.
Может, и правда. другой плагин попробовать…
Ну вот этот, о котором в статье, и попробуйте… Я думал, что Вы уже им пользуетесь… А чего ждать-то?
Не всегда есть время покопаться спокойно в админке, без спешки вникнуть во все настройки и т.д. А плагин этот попробую)
Да, есть такое… Однако ни настройка, ни работа этого плагина много времени не занимают…
Не знал что в базе данных так же копиться мусор, да в принципе я и не представляю работу этой базы, но устанавлю плагин и настрою по вашей инструкции думаю ничего плохого не будет
У меня работает нормально. Как говорится: Кроме пользы – никакого вреда…
Здравствуйте, Александр!
Благодарю за полезные статьи! Очень помогаете! Не знаю, где задать вопрос, поэтому попробую здесь, так как только что настроила этот плагин на сайте.
Вопрос у меня в том, что в последнее время к адресу страниц моего сайта стали прибавляться символы и цифры. До недавнего времени все было в порядке. Ссылки были: адреса сайта / название страницы или поста а теперь после этого знак вопроса и пошло… Как это можно исправить, не знаете?
Ольга, здравствуйте! Да, увидел у Вас вот такие ссылки:
Очень похоже на поведение плагина кэширования. Обычно так делают для того, чтобы кэш обновлялся с какой-то периодичностью. Посмотрите настройки Вашего… Возможно, что дело именно в нём.
Александр! Спасибо за отклик! У меня плагин кэширования Clearfy и я его настраивала так, как у вас в статье указано. Попробую посмотреть детальнее. Спасибо!
Ольга, Clearfy не плагин кэширования и ничего общего с кэшированием не имеет. Он для оптимизации. Вот же тут писал про него. Где там кэширование?
Для кеширования служат другие плагины.
Александр подскажите почему у меня после оптимизации плагином Optimize Database after Deleting Revisions до 231 мб после 253 мб и пишет что сбережено 22 мб
Странные какие-то показатели. В момент работы плагина ничего другого параллельно не выполнялось? Что показывает повторный запуск плагина оптимизации?