勉強したことのメモ

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のクエリキャッシュの設定方法
MySQLのクエリキャッシュの設定方法

MySQLでのクエリキャッシュ設定及び設定項目について以下にメモ。   ...

MySQLでデータの集計時に1日の起点を任意の時間に変更する方法
MySQLでデータの集計時に1日の起点を任意の時間に変更する方法

MySQLで1日毎の集計を行う際、例えば2020/01/01のデータは2020/ ...

PHPでmysqli関数使用時のプリペアドステートメントの利用方法
PHPでmysqli関数使用時のプリペアドステートメントの利用方法

PHPでMySQLを扱う際はmysqli関数を、エスケープの際はreal_esc ...

SSH接続でMySQLにダンプファイルをインポートする方法
SSH接続でMySQLにダンプファイルをインポートする方法

phpMyAdminやAdminerが入っていなかったり、ダンプファイルのサイズ ...

MySQLでグループ化したものを条件で絞る(HAVING)
MySQLでグループ化したものを条件で絞る(HAVING)

正規化したテーブルがあってその中には idとtagのカラムがある。 でtagの方 ...