Te groot WP_WOOCOMMERCE_SESSIONS in database [How-To Fix]

Zoals ik in andere artikelen zei, is WooCommerce een robuustere en flexibelere module, in staat om WordPress in een Ideale online winkel voor een bedrijf aan het begin.

Pentru un magazin online de dimensiuni modeste, WooCommerce poate fi rulat si pe unshared hosting, putand sa suporte lejer si 5.000 de produse / 100 comenzi la zi, daca tema folosita nu consuma multe resurse si nu faceti abuz de alte module (plugins).

Optimalisatie van de broncode Van het thema (WP -thema's), modules (WP -plug -ins) en De database optimaliseren Er zijn ook twee aspecten die we veel moeten nemen.

Ik merkte de vorige dagen op als een online opslag van bescheiden dimensies begint om veel RAM- en CPU -bronnen op een speciale server te consumeren generos. Acest consum mare de resurse au dus implicit la unloadcrescut pe server si un timp mare de incarcare a paginilor magazinului onine.

Wanneer we een ongerechtvaardigde grote belasting op een webserver opmerken, is het goed om de oorzaken te onderzoeken voordat we een maatregel nemen.

In baza de date am observat ca tabelulwp_woocommerce_sessionseste enorm de mare. Avea peste 6 GB. Un volum imens pentru un tabel dintr-o baza de date care in mod normal nu depasea 100 MB in total.

Deze este wp_woocommerce_ssionals?

Asa cum putem sa intuim si din numele lui, tabelulwp_woocommerce_sessionscontine sesiunile PHP (PHP -sessies).
Deze sessies zijn acties van gebruikers op de site (of webrobots) en bereiken meestal de database via cookies. In de WP_WOOCOMMERCE_Sessions worden gegevens opgeslagen over de producten die door gebruikers in het winkelwagentje worden geplaatst, kortingsbonnen, transportkosten, klantgegevens en vele andere informatie met betrekking tot het productorderproces.

Deze sessies worden gemaakt, zelfs of de gebruiker al dan niet op de site is geregistreerd en normaal gesproken moeten hij aflopen en automatisch verwijderen.

Helaas gebeurt het niet altijd dat deze sessies worden verwijderd en in sommige gevallen blijven ze permanent opgeslagen in wp_woocommerce_sessions, waardoor de tabel een groot volume bereikt.

Hoe de tafel te vegen wp_woocommerce_sessions Din SQL?

1. We gaan naar DashboardWoocommerceStatusHulpmiddelen (Tab).

2. Derulam in jos pana la optiuneaDuidelijk klantsessies. Atentie! Stergerea sesiunilor clientilor presupune stergerea tuturor produselor puse de acestia in cosul de cumparaturi. Daca in timp ce stergeti aceste sesiuni sunt clienti care au produse in cos, acestea or sa dispara, iar eventuala comanda online nu va fi finalizata.

3. Klik “Clearsi confirmari operatiunea.

In acest moment tabelulwp_woocommerce_sessionseste gol, deci toate sesiunile de cumparaturi ale clientilor au fost sterse.

Het probleem is niet veruit opgelost. De tabel SQL WP_WOOCOMMERCE_Sessions verzamelt er gegevens in en zal standaard opnieuw verhoudingen krijgen, wat niet wenselijk is.

Cum facem ca sesiunile clientilor sa nu mai stocate permanent in WooCommercewp_woocommerce_sessions?

Am aratat mai sus cum poate fi golit tabelulwp_woocommerce_sessionsdin baza de date, insa problema va aparea din nou dupa cateva zile in care se vor aduna din nou sesiuni ale clientilor.

Inainte de WooCommerce 2.5, sesiunile clientilor erau capturate prin intermediul cookies, ca mai apoi sa fie salvate in tabelul WordPresswp_options“.
Pentru magazinele mai mari aceasta metoda a dus deseori la dezastre.wp_optionsfiind tabel vital al WordPress, utilizat de optiunile si setarile generale. Identificarea si stergerea manuala a sesiunilor clientilor stocate in wp_options Het was geen gemakkelijk werk.
WooCommerce -prestaties waren niet de beste, en de schaalbaarheid in de loop van de tijd was een gevoelig punt.

Met de lancering van WooCommerce 2.5 in 2015 hebben WooCommerce -ontwikkelaars een nieuw WooCommerce -gebaseerd handling- en opslagsysteem geïntroduceerd WP Sessions Manager. Dit systeem heeft geleid tot het uiterlijk wp_woocommerce_sessions. Een speciale tabel voor klantensessies, die in de database geen interactie heeft met andere tabellen. In het geval van grote fouten moeten de verliezen minimaal zijn.

Uit wat ik heb opgemerkt, hebben de online winkels gelanceerd vóór WooCommerce 2.5 en die in de loop van de tijd constante updates hebben gekregen, enkele problemen hebben met betrekking tot de automatische verwijdering van de klantsessies. Het gaat hoogstwaarschijnlijk over een bug op een nieuwere versie van WooCommerce 2.5 of een WordPress / WooCommerce -plug -in die de updates niet heeft bijgehouden.

In mijn geval was het een conflict met een functie die in het bestand is toegevoegd functions.php van het thema, en welke voorkomen automatische verwijdering na een verlopen sessies van woocommerce_sessions.
Als u een dergelijk probleem ondervindt, moet u alle mogelijke oorzaken zorgvuldig onderzoeken. SQL -fout, SQL -vervolgingen, CRON -taak, conflicteert met andere plug -ins en controleer uw wijzigingen in de code in de loop van de tijd.

Am vazut ca WooCommerce ofera pentru doar $29 un plugin capabila sa administreze sisiunile clientilor.Duidelijke kar en sessies voor WooCommerce.. Bineinteles, pe langa stergerea programata a sesiunilor, modulul are mai multe unelte care v-ar putea fi de ajutor.

Een eenvoudiger optie van stergere programata awoocommerce_sessionsla intervale de o zi, is de verplaatsing met de volgende code in functions.php:

// clean cart every day
if (!wp_next_scheduled('cron_wc_clean_cart')) {
    wp_schedule_event( time(), 'daily', 'cron_wc_clean_cart' );
}

add_action ( 'cron_wc_clean_cart', 'wc_clean_session_cart' );
function wc_clean_session_cart() {
    global  $wpdb;

    $wpdb->query( "TRUNCATE {$wpdb->prefix}woocommerce_sessions" );
    $wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key='_woocommerce_persistent_cart_" . get_current_blog_id() . "';" );
    wp_cache_flush();
}

Laat een reactie achter als je hulp nodig hebt of een andere oplossing hebt.

Gepassioneerd over technologie schrijf ik met plezier op StealthSetts.com beginnend met 2006. Ik heb een rijke ervaring in besturingssystemen: macOS, Windows en Linux, maar ook in programmeertalen en blogplatforms (WordPress) en voor online winkels (WooCommerce, Magento, Presashop).

Home Uw bron van IT -tutorials, nuttige tips en nieuws. Te groot WP_WOOCOMMERCE_SESSIONS in database [How-To Fix]

1 dacht aan "Te groot WP_WOOCOMMERCE_SESSIONS in database [How-To Fix]”

  1. No tengo manera de borrar los datos pesa 500mb y tengo limite de 1000mb al minuto de borrar todo vuelve a llenarse completamente.alguna solucion?

    Antwoord
Laat een reactie achter