Это сломает мой сайт, если я удалю все временные записи в таблице wp_options?


14

Мой сайт в настоящее время содержит более 500 тыс. Переходных записей в таблице wp_options. Это приводит к частому сбою таблицы, и поэтому мой сайт.

Я думал, что временные записи все истек через некоторое время. Я не уверен, какие плагины ответственны, а что пошло не так. Однако я не хочу, чтобы мой сайт часто зависал, как это. Количество записей в wp_optionsтаблице несколько увеличилось до 200 тыс. + Несколько недель назад и теперь до 500 тыс.

Должен ли я только удалить %transient_timeout%записи - 200k + из них на данный момент?

Любая помощь будет принята с благодарностью.

Обновления от 16 июля 2012

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

Еще раз спасибо всем!

Ответы:




2

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

    function clear_transients()
    {

        global $wpdb;

        // delete all "namespace" transients
        $sql = "
            DELETE 
            FROM {$wpdb->options}
            WHERE option_name like '\_transient\_namespace\_%'
            OR option_name like '\_transient\_timeout\_namespace\_%'
        ";

        $wpdb->query($sql);

    }

1

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

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


1

Переходные процессы - это не что иное, как временные параметры, которые хранятся в базе данных в течение определенного периода, что означает, что они истекают, когда их цель закончена.

Например: _site_transient_update_pluginsпереходный процесс. Он содержит информацию о плагинах, которые имеют доступные обновления. Если вы удалите этот переходный процесс, а затем обновите свою панель мониторинга, вы найдете его в своей базе данных. Таким образом, даже если вы удалите переходный процесс, WP восстановит его. Это не сломает ваш сайт, но обязательно вызовет неожиданные вещи! Обязательно сделайте резервную копию вашей БД, прежде чем удалять любое из этих переходных значений.


0

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.