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_timeoutmysql variable in your my.cnf configuration file is large enough.
- You may also need to increase the
innodb_log_file_sizemysql variable in your my.cnf configuration to for example 128MB or higher.
- 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_packetin my.cnf file, eg. set
max_allowed_packet = 128M, then restart your MySQL server:
sudo /etc/init.d/mysql restart