コメントありがとうございます。 サービス終了した今なら、安く中古が手に入りそ…
MySQLで「Host ‘XXXXX’ is blocked because of many connection errors」が発生
phpからデータベースへ接続すると次のエラーが出た
Host ‘XXXXX’ is blocked because of many connection errors
色々サイトを見たら大概このような対処法が記載されている
FLUSH HOSTS; SET GLOBAL max_connect_errors=99999;
1.接続エラーのログをクリアする
2.制限を99999などの大きな数値にする
3.これで治る(キリッ
これって問題の先送りですよね(ボソボソ
ってことで、調査します
$ mysql -u ysrock -p MariaDB [(none)]> SHOW GLOBAL STATUS WHERE `Variable_name` IN ( 'Aborted_clients', 'Aborted_connects' ); +------------------+-------+ | Variable_name | Value | +------------------+-------+ | Aborted_clients | 6 | | Aborted_connects | 9098 | +------------------+-------+ 2 rows in set (0.00 sec)
⇒Aborted_connectsが多いみたいですね
これはMySQL サーバへの接続を試みて失敗した回数
MySQLのプロセスを確認する
MariaDB [(none)]> SHOW PROCESSLIST; +--------+----------------------+-----------------------------+------+---------+------+------------------+------------------+----------+ | Id | User | Host | db | Command | Time | State | Info | Progress | +--------+----------------------+-----------------------------+------+---------+------+------------------+------------------+----------+ | 692745 | ysrock | localhost | NULL | Query | 0 | NULL | SHOW PROCESSLIST | 0.000 | | 693113 | unauthenticated user | XXXXXX:35125 | NULL | Connect | NULL | Reading from net | NULL | 0.000 | | 693114 | unauthenticated user | XXXXXX:35126 | NULL | Connect | NULL | Reading from net | NULL | 0.000 | +--------+----------------------+-----------------------------+------+---------+------+------------------+------------------+----------+ 3 rows in set (0.00 sec)
⇒unauthenticated userが悪さしていそう
これはMySQLがDNSの逆引きによるもの
この機能を無効にします
[ysrock@db ~]$ sudo cp /etc/my.cnf /etc/my.cnf.`date +%Y%m%d` [ysrock@db ~]$ sudo vi /etc/my.cnf [mysqld] skip-name-resolve :wq [ysrock@db ~]$ sudo systemctl restart mariadb.service
検索
コメントを残す