Ele quebrará meu site se eu excluir todos os registros transitórios da tabela wp_options?


14

No momento, meu site possui um ultrajante 500k + registros transitórios na tabela wp_options. Isso faz com que a tabela seja travada com frequência e, por isso, seja o meu site.

Eu pensei que todos os registros transitórios expirariam após algum tempo. Ainda não tenho certeza de quais plug-ins são responsáveis ​​e o que deu errado. No entanto, não quero que meu site trave com frequência dessa maneira. O número de registros na wp_optionstabela aumentou significativamente para 200k + há algumas semanas e agora 500k +.

Devo excluir apenas os %transient_timeout%registros - 200k + deles no momento?

Qualquer ajuda seria muito apreciada.

Atualizações em 16 de julho de 2012

Na verdade, assumi um risco (fiz backup do meu site primeiro) excluindo todos os registros transitórios e o banco de dados do meu site não travou desde então :)

Mais uma vez obrigado a todos!

Respostas:




2

Aqui está uma função simples para limpar todos os transitórios e tempos limite - adicione mais para atender às suas necessidades.

    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

Os transitórios, como regra, são dados temporários. Portanto, se a pessoa que codificou o uso desses dados o fez corretamente, você deve ficar bem. Meu conhecimento do assunto é limitado, no entanto, e eu não tive muita experiência com eles.

Sua melhor aposta será quase certamente fazer backup de seu banco de dados, limpar os dados que você acha que não precisa e testar seu site. Se seu site ativo estiver com tráfego intenso, não deixe de testar em uma instância local para que ninguém seja afetado durante o teste.


1

Os transitórios nada mais são que opções temporárias, que são mantidas no banco de dados por um determinado período, significa que eles expiram quando seu objetivo termina.

Por exemplo: O _site_transient_update_pluginstransitório. Ele contém as informações sobre os plugins que possuem atualizações disponíveis. Se você excluir esse transitório e atualizar seu painel, você o encontrará novamente em seu banco de dados. Portanto, mesmo se você excluir um transitório, o WP o regenerará. Não quebrará seu site, mas definitivamente fará com que coisas inesperadas aconteçam! Certifique-se de fazer backup do seu banco de dados antes de excluir qualquer um desses valores transitórios.


0

Supõe-se que os transitórios sejam temporários, mas se um desenvolvedor codificou o material errado, depois de excluir todos os transitórios, talvez seja necessário salvar novamente as configurações de tema / plug-in / widget para recriar os transitórios. Na maioria das vezes, isso não é um problema, e você pode excluir todos os transitórios do site.

Depois que os transitórios são excluídos, seu tema e seus plugins precisarão reconstruir os transitórios nos quais eles dependem. Isso causará um impacto no desempenho imediatamente após a remoção dos transitórios, após o que o site deve correr um pouco mais rápido com os transitórios desnecessários que possam ter se acumulado no seu banco de dados.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.