Como eliminar o erro Mysql Gone Away How do I fix the error “Mysql Server has gone away”?

Standard

The MySQL server has gone away (error 2006) has two main causes and solutions:

  • Server timed out and closed the connection. To fix, check that wait_timeout mysql variable in your my.cnf configuration file is large enough.
  • Server dropped an incorrect or too large packet. If mysqld gets a packet that is too large or incorrect, it assumes that something has gone wrong with the client and closes the connection. To fix, you can increase the maximal packet size limit max_allowed_packet in my.cnf file, eg. set max_allowed_packet = 128M, then restart your MySQL server: sudo /etc/init.d/mysql restart

 

Source: https://matomo.org/faq/troubleshooting/faq_183/

MySQL server has gone away

Standard

Seu mysql anda estranho quando você está tentando fazer upload de um arquivo enorme via console (na verdade o restore, ou seja, mysql -u usuario -p nomedobdprarestaurar < arquivo.sql)???

Bem, se a mensagem de erro for esta -> MySQL server has gone away NÃO precisa entrar em pânico, só existem 2 coisas que são feitas e sanam tranquilamente o erro:

1 – entre no /etc/my.cnf (ou arquivo de configuração do mysql) e informe set-variable = max_connections=1500

Isto vai liberar para 1500 conexões concorrentes no mysql.

2 – Se o erro persistir, no mesmo arquivo informe:

max_allowed_packet = 5000000000

Você estará liberando uploads/restore/dumps de 1gb de tamanho.

Depois disso, reinicie o mysql (normalmente service mysql restart) e corra para o abraço.

 

Ah, se quiser ver qual valor ficou setado (só para conferir depois do restart use):

mysql> SHOW VARIABLES LIKE ‘max_allowed_packet’;