勉強したことのメモ

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

  関連記事

MySQLで特定の値を加算しつつNULL値の場合は0にする方法
MySQLで特定の値を加算しつつNULL値の場合は0にする方法

いくつかのコードに対して投票を行い、その合計値をスコアとして出したい。ただ、投票 ...

MySQLで指定カラムの文頭もしくは文末に文字を追記する方法
MySQLで指定カラムの文頭もしくは文末に文字を追記する方法

MySQLで特定カラムの文頭もしくは文末に年月日日時(YmdHis)を追記したい ...

MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法
MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法

他社が作成されたSQL文を見ているとDATE_ADDという使ったことの無い関数が ...

MySQLでユーザー作成時にエラーが発生
MySQLでユーザー作成時にエラーが発生

SSHからrootアカウントでMySQLにログインし、ユーザーを作成しようとする ...

MySQLにてSELECT時にdate型のカラムから和暦を計算し表示する方法
MySQLにてSELECT時にdate型のカラムから和暦を計算し表示する方法

MySQLにdate型のカラムに誕生年月日が格納されており、そこから和暦を計算し ...