• Привет всем!
    Подскажите, плиз! Таблица wp_options — насчитывает около 2 мил. записей. Сайт виснит (особенно админка при редактировании товаров).
    Нужно почистить эту большую таблицу. Есть плагин Clean Options (но он стар), версия ворпресса стоит 4.1
    Что посоветуете использовать чтобы привести в порядок эту таблицу, возможно есть какие то другие эффективные плагины или возможно в ручную запросами почистить?
    Спасибо за любой совет!

Просмотр 15 ответов — с 1 по 15 (всего 20)
  • смотря какими записями забит.
    вот плагин оптимизации https://wordpress.org/plugins/rvg-optimize-database/

    Очень много таких записей:
    _transient_timeout_wc_average_rating_80341445857175
    _transient_wc_average_rating_80341445857175
    _transient_wc_rating_count_72091445857175
    _transient_timeout_wc_rating_count_73311445857175

    то есть те что начинаются на _transient (что это за записи в таблице)?

    На постах нашел запрос который удаляет записи из таблицы:
    DELETE FROM wp_options WHERE option_name like ‘_transient_%’ OR option_name like ‘displayed_galleries%’

    Можно ли в ручную запросом (тот что выше) удалить эти записи — не приведет ли это не сбою работы ворпресса? Или лучше использовать тот плагин который вы посоветовали?
    Спасибо!

    Кстати, этот плагин — Optimize Database after Deleting Revisions — только оптимизирует таблицы после удаления записей, но не выполняет самого удаления (в данном случае интересует чистка таблицы wp_options, так как там накопилось очень много разных записей)! Или может я что-то не так понимаю? там есть возможность удаления ненужных строк из таблицы wp_options?

    transient это временные записи, которые использует и движок и плагины.
    скорее всего большинство из этих записей можно удалить, как устаревшие.
    с уверенностью сказать что вручную не нанесете вред не могу. В плагине вроде есть опция удаление устаревших _transient записей. Насколько помню это вобще был глюк word press? когда таблица опций разросталась до необыкновенных р азмеров. потом это пофиксили, но с какой версии не знаю.

    Выполнил этот плагиг (установил — Удалить временные данные с истёкшим сроком), база данных была оптимизирована, но таблица wp_options — так почищена и не была! Этот плагин похоже не удаляет записи из табл. wp_options

    Вспомнил, в связи с чем ваш запрос упоминался. и про глюк вспомнил. Дело касалось nextgen gallery ранних версий до 2.х есть такой плагин?

    Вот это пост: https://wordpress.org/support/topic/wp_options-to-many-records?replies=39
    там была затронута тема очистки этой таблицы и приведен пример sql-запроса для очистки от хлама!
    Можно ли это запрос использовать для чистки таблицы, не навредит не удалит ли лишнего там)))
    К сожалению плагинов, кроме вот этого старого — Clean Options (он не работает) — в инете не нашел…. остается только ручная работа(((

    сделайте backup таблицы wp_options выполните запрос. если результаты устроят, хорошо, нет- верните все назад
    я так понимаю это записи связаны у вас с рейтингом товаров в woocommerce Для рейтинга отдельный плагин?

    Да, сейчас попробую затем отпишусь…

    Все работает, вроде проверил, но вот какую особенность нашел: в таблицу wp_options постоянно добавляются вот эти записии — _transient_wc_ в конце это может быть разноное окончание. Что за процесс генерирует и добавляет записии каждые 5 мин в эту таблицу?
    У нас стоит интенрнет-магазин на woocommerce — там вроде ничего не запущено чтобы оно добавляло записи! Что это может быть?

    Модератор Yui

    (@fierevere)

    永子

    Transients API
    если нет никакого бэкенда типа xcache/apcu/memcached/redis
    то транзиенты создаются в БД

    Transients API — что это такое (извините за неопытность)?
    у нас установлен плагин WP Super Cache — но он генерирует файлики или он еще добавляет данные в таблицу БД.
    Что нам сделать или отключить чтобы записи не добавлялись в данную таблицу?

    Модератор Yui

    (@fierevere)

    永子

    Transients API — что это такое

    это кеш обьектов
    суперкеш кеширует страницами, а кеш обьектов кеширует некий обработанный массив данных, например все опции autoload из wp_options как 1 обьект

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

    если сервер свой, идеальный вариант 16-32 Mb (до 128Мб для большого сайта) выделенных под кеш переменных apcu или xcache + дроп ин для вордпресс (можно использовать Tribe Cache)
    если хостинг «виртуальный» или попросту шаред — иногда бывает memcached, тоже требуется дроп-ин (object-cache.php) для мемкешед
    если нет ничего — ну что ж.. БД так БД

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

    но кешируется все это на определенное время а не на постоянно (верно я понимаю). Как и где можно настроить чтобы по истичению времени данные удалялись с таблицы, или это невозможно?
    И еще, нашли вот такой плагин — Delete Expired Transients — им можно пользоваться для чистки этого временного кеша?
    что посоветуете сделать чтобы таблица не так быстро засорялась этими временными даныими?

Просмотр 15 ответов — с 1 по 15 (всего 20)
  • Тема «Чистка таблицы wp_options» закрыта для новых ответов.