Https://dev.mysql.com/doc/refman/5.5/en/communication-errors.html
There are several reasons why got Timeout reading communication packets errors may be caused by the following:
A client attempts to access a database but has no privileges for it. (No permissions)
A client uses an incorrect password. (Bad password)
A connection packet does not contain the right information. (The connection does not contain the correct information)
It takes more than connect_timeout seconds to obtain a connect packet. (Get connection information from Connect_timeout duration)
The client program did is not a call mysql_close () before exiting. (The client does not invoke the Mysql_close () function)
The client had been sleeping more than wait_timeout or interactive_timeout seconds without all issuing to the requests Ver. (Client's empty connection time is too long, more than Wait_timeout and interactive_timeout time)
The client program ended abruptly in the middle of a data transfer. (Terminated during data transfer)