DBAtlas · データベース運用アトラス

1129: Host 'host' is blocked because of many connection errors(接続エラーが多いためホスト 'host' がブロックされた)

MySQL

意味

クライアントホストからの連続した接続エラーがしきい値 (max_connect_errors) を超えたため、MySQL がそのホストをブロックした。それまでに失敗したハンドシェイクにより、ホストがブラックリストに登録された。

原因

ロードバランサ/監視ツールが TCP ポートに不完全または不正なハンドシェイクを送信している、ネットワークの問題で接続が途中で切断される、または設定誤りのクライアントが失敗する接続を繰り返している。エラーカウンタが max_connect_errors に達するとホストがブロックされる。

対処方法

直ちにブロックを解除する: SQL では TRUNCATE TABLE performance_schema.host_cache; (8.0.23+。FLUSH HOSTS は 8.0.23 で非推奨となり 8.4 で削除された)、コマンドラインでは mysqladmin flush-hosts。ブロックされたホストの確認: SELECT host, ip, sum_connect_errors FROM performance_schema.host_cache; 根本原因を修正する: ヘルスチェック/監視ツールが完全な MySQL ハンドシェイクを行うよう設定し、ネットワークの安定性を確認する。健全な環境では許容度を上げるため max_connect_errors を引き上げることもできるが、重要なのは実際の接続エラーを解決することである。

DBAtlas で開く →

同じデータベースの他の項目