sql >> Base de Datos >  >> RDS >> Mysql

¿Puedes aumentar max_allowed_packet desde el cliente?

He leído muchos artículos que explican cómo lograr esto, pero he llegado a la conclusión de que simplemente no lo han probado correctamente. Mis conclusiones son:

  • max_allowed_packet del servidor es un límite superior codificado de forma rígida. Puede cambiarlo para todo el servidor como cualquier otra configuración del lado del servidor (archivo de configuración o parámetros de línea de comandos del servidor), pero no es posible aumentarlo desde el cliente.

  • Algunos clientes (como la utilidad de línea de comandos oficial) permiten configurar max_allowed_packet en la conexión. Es la única forma de cambiar realmente el valor de un cliente (cambiar las variables de sesión o globales no tiene efecto en el tamaño de los paquetes intercambiados), pero solo es útil si desea reducir eso. El envío de paquetes más grandes que la configuración del servidor aún generará errores relacionados con el paquete, ya que el servidor no los aceptará.

En resumen:

  1. Tienes que tratar max_allowed_packet como de solo lectura.
  2. Si es demasiado pequeño, debe cambiarlo para todo el servidor o vivir con él.

Es una pena que no pueda proporcionar enlaces a la documentación oficial, pero este tema está mal documentado.