Error «Got a packet bigger than ‘max_allowed_packet’ bytes de la base de datos de WordPress»

En los logs de algunos WordPress durante la semana pasada hemos encontrado miles de errores que empiezan por «Got a packet bigger than ‘max_allowed_packet' bytes de la base de datos de WordPress».

Un ejemplo de error completo es este (donde hemos eliminado el option_value porque es muy extenso y no aporta nada:

[Tue Apr 09 06:30:43.806875 2019] [proxy_fcgi:error] [pid 21746] [client 5.188.210.72:37809] AH01071: Got error 'PHP message: Error Got a packet bigger than 'max_allowed_packet' bytes de la base de datos de WordPress para la consulta UPDATE `wp_DOMINIO_options` SET `option_value` = '...', referer: https://DOMINIO.COM/producto-woocommerce/?unapproved=884&moderation-hash=8008d3f146be5247c699aca9b48f736b#comment-884

Son inyecciones en los comentarios de productos de WooCommerce que al final incluso llegan a tumar el servidor.

¿Cómo solucionar el problema de «Got a packet bigger than ‘max_allowed_packet' bytes»?

Esto es un error de MySQL que se puede solucionar aumentando el valor de «max_allowed_packet» por ejemplo a 500M.

Para ello deberemos añadir esta línea:

max_allowed_packet=500M

en el archivo my.ini /  ~/.my.cnf / mysqld.cnf que en MySQL 5.7 está en:

/etc/mysql/mysql.conf.d/mysqld.cnf

y en MySQL 5.6 está en:

/etc/my.cnf

La línea para incrementar el «max_allowed_packet» hay que añadirla en la sección de:

[mysqld]

o

[client]

Y luego reiniciar MYSQL y todo solucionado. En Ubuntu con:

sudo service mysql restart

Y comprobar que todo funciona con:

service mysql status

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.