Va afecta site-ul meu dacă șterg toate înregistrările temporare din tabelul wp_options?
Site-ul meu are în prezent un număr exagerat de peste 500k înregistrări temporare în tabelul wp_options. Acest lucru face ca tabelul să se blocheze frecvent și, în consecință, și site-ul meu.
Credeam că înregistrările temporare vor expira toate după un timp.
Nu sunt sigur care plugin-uri sunt responsabile și ce nu funcționează corect încă.
Cu toate acestea, nu vreau ca site-ul meu să se blocheze frecvent în acest fel.
Numărul de înregistrări din tabelul wp_options
a crescut exagerat la peste 200k acum câteva săptămâni și acum la peste 500k.
Ar trebui să șterg doar înregistrările %transient_timeout%
- peste 200k dintre ele în acest moment?
Orice ajutor ar fi foarte apreciat.
Actualizări pe 16 iulie 2012
De fapt, mi-am asumat riscul (am făcut mai întâi backup site-ului) ștergând toate înregistrările temporare și baza de date a site-ului meu nu s-a mai blocat de atunci :)
Mulțumesc din nou tuturor!

Am folosit:
DELETE FROM `wp_options` WHERE `option_name` LIKE ('%\_transient\_%');
pentru a curăța cu rezultate excelente :)

Acesta este un set destul de definitiv de răspunsuri despre transienți

Transienții, ca regulă, sunt date temporare. Deci, dacă persoana care a codat utilizarea acestor date a făcut-o corect, ar trebui să fii în regulă. Cu toate acestea, cunoștințele mele despre acest subiect sunt limitate și nu am prea multă experiență cu ele.
Cea mai bună soluție pentru tine va fi aproape sigur să faci o copie de rezervă a bazei de date, să ștergi datele pe care nu crezi că le mai ai nevoie, apoi să testezi site-ul tău. Dacă site-ul tău live are mult trafic, asigură-te că testezi pe o instanță locală, astfel încât nimeni să nu fie afectat în timpul testării.

Transienții nu sunt altceva decât opțiuni temporare, care sunt păstrate în baza de date pentru o anumită perioadă, adică expiră odată ce și-au îndeplinit scopul.
De exemplu: Transientul _site_transient_update_plugins
. Acesta conține informații despre plugin-urile care au actualizări disponibile. Dacă ștergi acest transient și apoi reîmprospătezi panoul de control, îl vei regăsi înapoi în baza ta de date. Deci, chiar dacă ștergi un transient, WordPress îl va regenera. Nu va strica site-ul tău, dar cu siguranță va provoca lucruri neașteptate! Asigură-te că faci o copie de rezervă a bazei de date înainte de a șterge oricare dintre aceste valori transiente.

Iată o funcție simplă pentru a șterge toate transient-urile și timeout-urile - adaugă cod suplimentar pentru a se potrivi nevoilor tale.
function clear_transients()
{
global $wpdb;
// șterge toate transient-urile din "namespace"
$sql = "
DELETE
FROM {$wpdb->options}
WHERE option_name like '\_transient\_namespace\_%'
OR option_name like '\_transient\_timeout\_namespace\_%'
";
$wpdb->query($sql);
}

Tranzientele sunt concepute să fie temporare, dar dacă un dezvoltator a codat greșit, atunci după ștergerea tuturor tranzientelor, poate fi necesar să re-salvați setările temei/plugin-ului/widget-ului pentru a recrea tranzientele. În majoritatea cazurilor aceasta nu este o problemă și puteți șterge în siguranță toate tranzientele de pe site.
Odată ce tranzientele au fost șterse, tema și plugin-urile dvs. vor trebui să reconstruiască tranzientele de care depind. Acest lucru va determina o scădere a performanței imediat după eliminarea tranzientelor, după care site-ul ar trebui să funcționeze puțin mai rapid, deoarece tranzientele inutile care s-ar fi putut acumula în baza de date au fost eliminate.
