勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

MySQLで「server has gone~」というエラーの対応方法

   2024/02/25  MySQL / MariaDB

MySQLで「MySQL server has gone away」というエラーが出ていた。調べてみるとMySQLの接続がタイムアウトしているのが原因だった。以下に対応方法をメモ。

 

対応方法

OKパターン

エラー発生箇所の前で以下で接続しなおすことで解決。

mysqli_close();
$mysqli = new mysqli($dbhost, $dbuser, $dbpass, $dbname);

NGパターン

以下で接続時間を延ばしても解決しなかった。

ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);

 

参考サイト

http://jaxx2104.info/mysql-server-has-gone-away

 - MySQL / MariaDB

  関連記事

phpmyadminからプロセスの停止
phpmyadminからプロセスの停止

重たいSQL文を叩いた際、どうにも処理できず メモリ使用率が100%から下がらな ...

MySQLのtinyintのカラムにbool値を入れた場合
MySQLのtinyintのカラムにbool値を入れた場合

他所のシステムに携わることがあり中身を色々見ているとMySQLでtinyint( ...

MySQLで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法
MySQLで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法

phpとmysqliを使っている中で次回挿入するオートインクリメントの値と、前回 ...

MySQLでwhere句を使ってカラム指定でデータをコピーする方法
MySQLでwhere句を使ってカラム指定でデータをコピーする方法

MySQLで大量のデータを保存しているテーブルがあり、そのデータを絞った上で尚且 ...

MySQLで指定したカラムの最頻値を抽出する方法
MySQLで指定したカラムの最頻値を抽出する方法

MySQLで指定したカラムの最頻値(全データの中で最も多く出現する値)を抽出した ...