Buenos días
Reabro la consulta que indico, por no ver opción a consultar en ella aunque me dice que no está terminada.
https://www.webempresa.com/foro/postid/487860
Como expuse hace unos días, la tabla indicada había subido hasta los 2,2gb y obviamente, es un disparate.
Lo solucioné por medio de las opciones de WC, pero creo y de cara a los clientes que no es la mejor forma ya que borra también los carros pendientes de compra y algunos de ellos son utilizados para hacer presupuestos (composición de PC's, temas de redes, ...)
Me preguntaba si hay algún plugin que nos permita vaciar dicha tabla a la par que mantener los carros durante x días.
Como siempre digo, gracias por vuestra ayuda.
PD/ He abierto ticket en el sistema porque a la vez que ha aumentado la tabla, tenemos problemas con el certificado que el servidor nos cede (quizá no tenga que ver, pero...).
Contenido solo visible a usuarios registrados
Hola Antonio.
Exacto, puedes sustituir el anterior por este
add_action('woocommerce_cleanup_sessions', 'mls_limpiar_sesiones'); function mls_limpiar_sesiones() { global $wpdb; // Limpiar sesiones WooCommerce expiradas $wpdb->query( "DELETE FROM {$wpdb->prefix}woocommerce_sessions WHERE session_expiry < UNIX_TIMESTAMP()" ); $wpdb->query("OPTIMIZE TABLE {$wpdb->prefix}woocommerce_sessions"); // Limpiar Action Scheduler (acciones completadas, canceladas y fallidas) $wpdb->query( "DELETE FROM {$wpdb->prefix}actionscheduler_actions WHERE status IN ('complete', 'canceled', 'failed')" ); $wpdb->query("OPTIMIZE TABLE {$wpdb->prefix}actionscheduler_actions"); } add_action('init', function() { if (!wp_next_scheduled('woocommerce_cleanup_sessions')) { wp_schedule_event(time(), 'daily', 'woocommerce_cleanup_sessions'); } });
Un saludo
Buenos días
Tras un finde de relax, ésta mañana observo que de las tres (3) tablas a optimizar, sólo una de ellas (actionscheduler_actions) ha sido optimizada.
Debe de haber algo en el código que no se ejecuta como debiera.
No se si es el orden de trabajo u otra cosa, pero ésta mañana la bdatos está en 1,7gb y la tabla "woocommerce_sessions" en 763Mb
Hago optimización de forma manual a través de woocommerce.
Hola Antonio.
El código se ejecuta cada 24 Horas, no se exactamente cuando se ejecutó por última vez, puedes modificar el tiempo de ejecución por ejemplo cada 12 horas:
Modifica esto:
add_action('init', function() {
if (!wp_next_scheduled('woocommerce_cleanup_sessions')) {
wp_schedule_event(time(), 'daily', 'woocommerce_cleanup_sessions');
}
Por esto:
add_action('init', function() {
if (!wp_next_scheduled('woocommerce_cleanup_sessions')) {
wp_schedule_event(time(), 'twicedaily', 'woocommerce_cleanup_sessions');
}
});
De todas formas esas tablas son las que menos te ocupan, las tablas que más te ocupan son dgwt_wcas_invindex_doclist ( tabla del plugin FiboSearch ), rank_math_internal_meta, rank_math_link_genius_audit, yoast_primary_term.
Si accedes a phpMyAdmin podrás ver el peso de cada tabla.
Un Saludo
Buenos días
Sé de la tabla que comentas y con su volumen, la bdatos no supera 1gb (una vez optimizada)
He realizado las modificaciones propuestas y vamos a esperar unos días a ver qué tal.
Os mantengo informados.
Hola Antonio.
Ok dejo el hilo abierto.
Un saludo