ホームページ >データベース >mysql チュートリアル >MySQL 接続がエラー 2006 (「MySQL Server Has Gone Away」) で失敗するのはなぜですか? それを修正するにはどうすればよいですか?
ファイルとレポートを処理するサーバーを実行している場合結果をリモート MySQL サーバーに送信すると、「2006、MySQL サーバーが消えました」というエラーが発生する可能性があります。これは、サーバーへの接続が予期せず途中で終了したことを示します。
一般的な想定に反して、この問題は通常、wait_timeout 設定とは関係ありません。代わりに、解決策は別の MySQL パラメータ max_allowed_packet にあります。
デフォルトの max_allowed_packet 設定は、多くの場合、次のように低いことがわかります。 4MB (4194304 バイト)、大規模なデータを処理するには不十分な場合がありますデータパケット。データ ペイロードがこの制限を超えると、サーバーが切断され、「MySQL サーバーが消えました」エラーが発生します。
これを解決するには、/etc/my.conf の [mysqld] セクションの max_allowed_packet 値を増やします。サーバー上の cnf 構成ファイル。通常、8 または 16 MB の設定で十分です。
例:
[mysqld] ... max_allowed_packet=16M ...
または、次のコマンドを使用してパラメータを動的に設定することもできます (変更は再起動時に失われます)。
SET GLOBAL max_allowed_packet=104857600;
以上がMySQL 接続がエラー 2006 (「MySQL Server Has Gone Away」) で失敗するのはなぜですか? それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。