Чи зламається мій сайт, якщо я видалю всі перехідні записи в таблиці wp_options?


14

Наразі на моєму веб-сайті є надзвичайні 500k + перехідні записи в таблиці wp_options. Це призводить до частого збоїв таблиці, і таким чином бути моїм сайтом.

Я думав, що минущі записи закінчуються через деякий час. Я не впевнений, які плагіни є відповідальними, а що пішли не так. Однак я не хочу, щоб мій сайт часто збоїв, як це. Кількість записів у wp_optionsтаблиці суттєво зросла до 200k + кілька тижнів тому, і зараз 500k +.

Чи потрібно лише видалити %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.