PHP から MySQL に接続していて以下のエラーが出た、原因がつかめなくて詰まったが。解決したのでメモ。 Warning: mysql_query(): MySQL server has gone away Warning: mysql_query(): Error reading result set's header maxallowedpacket が原因ではなった 調べてみるとメモリ不足とのことで、maxallowedpacket の値を 32Mb などにしたが解決せず。原因は別にあるようだ。 mysqli::ping による確認 とりあえず接続を行っている箇所の手前で、 ping を送ってサーバとの接続をチェックするとよい。