勉強したことのメモ

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

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

   2024/02/25  MySQL

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

  関連記事

htmlspecialcharsを通してMySQLに格納したものを元に戻して出力

MySQLにHTMLタグを入れたくない場合にhtmlspecialcharsを使 ...

MySQLでスレッドの実行状況を表示しスレッドの経過時間チェックや特定スレッドを強制終了する方法

データベースサーバが重たく、原因を調査する機会があった。サーバ自体のメモリやCP ...

mysqldumpが使えないレンタルサーバでMySQLのバックアップ

mysqldumpが使えないレンタルサーバで開発を行うことがあり、尚且つ他社に使 ...

MySQLのRANK及びDENSE_RANK関数を用いてランキングを実装する方法

ランキング機能を実装する際、上位〇位までのデータをMySQLから持ってきて順位付 ...

MySQLが起動も再起動もできない際の対応方法

サイトで障害が発生した。FTPやSSH接続は出来るけどサイト自体は表示されない。 ...