2013: Lost connection to MySQL server during query(クエリ中に MySQL サーバーとの接続が失われた)
MySQL意味
クエリの実行中にクライアントと MySQL サーバー間の接続が切断された。サーバーが応答または結果を返す前に切れた。
原因
長時間実行されるクエリによる net_read_timeout/net_write_timeout の超過、メモリ不足 (OOM) によるサーバーのクエリ/接続の終了、ネットワーク障害、max_allowed_packet の超過、サーバーのクラッシュまたは再起動、非常に大きな結果セット。
対処方法
ネットワークの安定性とサーバーのエラーログを確認し、OOM やクラッシュがあったか調べる。タイムアウトを増やす: SET GLOBAL net_read_timeout = 120; 大きなクエリはバッチに分割する。max_allowed_packet を増やす。アプリケーションに接続の再試行ロジックを追加する。長いクエリを最適化する。
同じデータベースの他の項目
- 1305PROCEDURE does not exist(プロシージャが存在しない)
- 1227Access denied; you need (at least one of) the PRIVILEGE(アクセス拒否。権限が必要)
- 3730Cannot drop table referenced by a foreign key constraint(外部キー制約で参照されているテーブルは削除できない)
- 1153Got a packet bigger than 'max_allowed_packet' bytes(max_allowed_packet より大きいパケットを受信)
- 1969MariaDB: Query execution was interrupted (max_statement_time exceeded)(クエリの実行が中断された)
- 1927MariaDB: ER_CONNECTION_KILLED: Connection was killed(接続が強制終了された)
- 1290ER_OPTION_PREVENTS_STATEMENT: running with the --read-only option(--read-only オプションで稼働中)