답변:
이 시점에서 FLUSH HOSTS 를 실행 하고 차단이 해제되었는지 확인해야합니다.
MySQL 문서는 FLUSH HOSTS에 대해 다음과 같이 말합니다.
- 호스트 캐시 테이블을 비 웁니다. 일부 호스트가 IP 주소를 변경하거나 호스트 'host_name'이 차단되었다는 오류 메시지가 표시되면 호스트 테이블을 비워야합니다. MySQL 서버에 연결하는 동안 주어진 호스트에 대해 max_connect_errors 이상의 오류가 연속적으로 발생하면, MySQL은 잘못된 것으로 가정하고 추가 연결 요청으로부터 호스트를 차단합니다. 호스트 테이블을 비우면 호스트에서 추가 연결을 시도 할 수 있습니다. C.5.2.6 절.“호스트 'host_name'이 차단되었습니다”를 참조하십시오. 이 오류 메시지를 피하기 위해 --max_connect_errors = 999999999로 mysqld를 시작할 수 있습니다.
??로 시작하기 위해 호스트를 차단해야하는 이유는 무엇입니까 ??
MySQL 문서 에 따르면 :
다음 오류가 발생하면 mysqld가 중간에 중단 된 'host_name'호스트로부터 많은 연결 요청을 수신했음을 의미합니다. 많은 연결 오류로 인해 'host_name'호스트가 차단되었습니다. 'mysqladmin flush-hosts'로 차단 해제 허용 된 중단 된 연결 요청 수는 max_connect_errors 시스템 변수의 값에 의해 결정됩니다. max_connect_errors가 요청에 실패한 후, mysqld는 무언가가 잘못되었다고 가정하고 (예를 들어 누군가 침입하려고하는 경우) mysqladmin flush-hosts 명령을 실행하거나 FLUSH HOSTS 문을 실행할 때까지 추가 연결에서 호스트를 차단합니다. 5.1.3 절“서버 시스템 변수”를 참조하십시오.
기본적으로 mysqld는 10 개의 연결 오류 후 호스트를 차단합니다. 다음과 같이 서버를 시작하여 값을 조정할 수 있습니다.
shell> mysqld_safe --max_connect_errors=10000 &
주어진 호스트에 대해이 오류 메시지가 표시되면 먼저 해당 호스트의 TCP / IP 연결에 문제가 없는지 확인해야합니다. 네트워크 문제가있는 경우 max_connect_errors 변수의 값을 늘리는 것이 좋지 않습니다.