Поддержка Проблемы и решения База данных растёт на 5-7 мегабайт в неделю

  • Добрый день! Стала быстро расти в размерах база данных. За неделю увеличивается на 5-7 мегабайт, только за счёт таблицы «options». За последние пять дней уже 10 мегабайт удалено, во время оптимизации. Вирусов нет, регистрация закрыта, формы обратной связи нет, автор один. Набор плагинов стандартный, использую такой на десятке сайтов, с идентичными настройками. И только на одном такой баг. Подскажите, где искать проблему?

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 15 ответов — с 1 по 15 (всего 22)
  • Набор плагинов стандартный

    Где можно почитать про эти стандарты?
    А то я вообще впервые слышу, что существуют какие-то стандарты на набор плагинов.

    shinkareff, привет.

    Обычно базу грузят всякие логи, статистики и метрики, плагины безопасности и анти-спама. У _options ещё есть временные опции, можете также проверить (они удаляются автоматически, но, если у вас проблема с CRON’ом, то может быть косяк).

    Вирусов нет

    Откуда такая уверенность?) У вас, к примеру, установлен плагин «Nextgen Gallery», который известен своими уязвимостями)

    Модератор Yui

    (@fierevere)

    ゆい

    удалите спам и ненужное из корзины.

    вычистите лишние редакции — https://ru.wordpress.org/plugins/better-delete-revision/

    удалите данные транзиентов — https://ru.wordpress.org/plugins/delete-expired-transients/

    можете сделать все это из одного плагина
    https://ru.wordpress.org/plugins/wp-optimize/

    Откуда такая уверенность?

    @m0ze, один раз в неделю проверка внешним сервисом и один раз в неделю проверка с помощью Wordfence Security. Уверенность из собственного опыта, я занимаюсь сайтами 20 лет, и с WordPress работаю с первой публичной версии.

    Обычно базу грузят всякие логи, статистики и метрики, плагины безопасности и анти-спама. У _options ещё есть временные опции

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

    Ну и для полноты картины: на двух других хостингах работают ещё примерно два десятка сайтов, тоже на ВП, настройки и плагины примерно одинаковы. Тоже не наблюдаю ничего подобного.

    @fierevere, ревизии отключены. Один раз в неделю удаляю транзиенты, чищу прочий мусор и провожу оптимизацию базы, на всех своих сайтах. Таблица «options» растёт только на одном. Не особенно парит, можно поставить оптимизацию на автомат. Но, тут уже чисто спортивный интерес: почему именно на этом сайте и как отловить баг?

    Модератор Yui

    (@fierevere)

    ゆい

    c таким опытом.. посмотрите базу, какая таблица «пухнет», какого рода данные

    @fierevere, дело в том, что я не кодер. Ну то есть совсем. Чтобы разобраться, сравнивал содержимое таблицы «options» до и после оптимизации. Удаляется очень много просроченных транзиентов и какие-то данные, которые я не могу расшифровать. В поиск их вбивать бесполезно, Гугл этого запроса не понимает.

    shinkareff,

    один раз в неделю проверка с помощью Wordfence Security

    Эта фраза на фоне

    я занимаюсь сайтами 20 лет

    говорит о многом.

    Yui, казалось бы, очевидный сценарий)

    UPD:

    shinkareff,

    дело в том, что я не кодер

    Так бы сразу и сказали.

    какие-то данные, которые я не могу расшифровать

    Можете показать что за данные? (хоть в Pastebin, хоть текстовым файлом)

    Гугл этого запроса не понимает.

    Можете попробовать вбивать в Гугл эти данные кусками. Если данные не зашифрованы, то вполне можете найти какие-то зацепки.

    @m0ze, не знаю, о чём говорит Вам моя фраза. Надеюсь, Вы не ставите целью меня задеть. А действительно хотите помочь.

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

    Код я попробую показать, сегодня или завтра. Сделаю снимки таблицы до и после.

    shinkareff,

    Надеюсь, Вы не ставите целью меня задеть.

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

    Код я попробую показать, сегодня или завтра.

    Окей, ждём.

    1. В основном меню phpMyAdmin можно увидеть какая таблица весит больше https://yadi.sk/i/aT0gAZvrnGltaA

    2. Можно также выполнить этот sql запрос:

    SELECT option_name, LENGTH(option_value) AS length FROM wp_options 
      WHERE autoload = 'yes' ORDER BY length DESC LIMIT 10;

    Это покажет топ 10-ти опций (LIMIT 10) — какая тяжелей и ее наименование. Можно потом пробить их гуглом — узнать от какого они плагина.
    autoload = ‘yes’ — именно те опции что входят в автозагрузку ВП при каждом его init-е
    Но это не покажет если у вас 10000 мелких строк в опциях.

    3. СтОит в wp_options также отсортировать по id — чтобы вверху были только самые свежие — транзиенты там несколько будет, а вот закономерность того что будет много — также можно посмотреть.

    4. Еще могу предположить что плагин безопасности настроен на разных сайтах по разному — вот и размер увеличивается.

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

    • Ответ изменён 3 недели, 6 дней назад пользователем Otshelnik-Fm.

    К сожалению, так и не смог сделать снимок базы. До оптимизации показывает размер таблицы «options» — 7 мегабайт. Выгружаю дамп этой таблицы без сжатия, скачивается 1 мегабайт. Провожу оптимизацию, в PHPMyAdmin размер таблицы уменьшается до 0,9 мегабайт. И скачивается дамп такого же размера. Мистика какая-то.

    Единственная гипотеза: перед выгрузкой дампа PHPMyAdmin сам делает оптимизацию.

    В основном меню phpMyAdmin можно увидеть какая таблица весит больше

    @otshelnik-fm, речь только об одной таблице «options». Растёт она.

    Но это не покажет если у вас 10000 мелких строк в опциях.

    Вот в этом и проблема.

    Еще могу предположить что плагин безопасности настроен на разных сайтах по разному

    Нет, защиту на этот сайт поставил две недели назад, когда у турков сезонное обострение началось. Этот плаг не при делах. Проблема возникла полгода назад.

    Завтра попробую сортировкой по ID отфильтровать. Напишу о результате.

    Модератор Юрий

    (@yube)

    Мистика какая-то.

    Никакой мистики. В PMA Вы видите не размер данных, а занимаемое таблицей место. При удалении записей в таблице остаются «дырки». Размер «дырок», кстати, виден в колонке Overhead. Оптимизация таблицы просто переписывает данные в файле так, что пустых мест не остается (смысл тот же, что и в дефрагментации диска). В дамп, естественно, «пустота» не попадает, поэтому размер дампа близок к размеру после оптимизации.

    Итак, коротко о том, что выяснил: до и после оптимизации количество строк в таблице не уменьшается. Больше всего строк типа:
    — transient_amp_img_***
    — transient_timeout_*__***
    — displayed_gallery_rendering_***

    @yube, колонки «Overhead» в таблице нет. Только id, name, value и autoload.

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

Просмотр 15 ответов — с 1 по 15 (всего 22)