반응형
에러 발생
예전에 회사에서 원격으로 근무하고 있던 동료 개발자로부터 에러가 발생했다고 공유 받았다.
DB는 MySQL이며 아래와 같은 에러 메세지가 떴다고 한다.
ERROR 1129(00000): Host '*' is blocked because of many connection errors.
Unblock with 'mysqladmin flush-hosts'
에러 원인
검색해보니 바로 원인을 알 수 있었다.
원격 서버에서 MySQL 서버로 연결한 뒤 close를 하면 MySQL은 비정상적인 접속으로 판단해 해당 IP를 블락 처리한다고 한다.
이 때 MySQL에서 이와 같은 비정상적인 접속 요청 수를 카운팅해서 global.max_connect_errors에 지정된 값을 넘기면 자동 블락 처리가 되어 생긴 이슈였다.
에러 해결
해당 값을 변경해주면 에러는 쉽게 해결된다.
-- max_connect_errors 카운트 확인
select @@global.max_connect_errors;
-- max_connections 카운트 확인
select @@global.max_connections;
-- 에러 카운트 초기화
flush hosts;
-- max_connections 변경
set global max_connections=300;
-- max_connect_errors 변경
set global max_connect_errors=10000;
이렇게 새로 세팅하고 나서 MySQL을 재시작 하지 않아도 적용된다.
반응형
'DataBase' 카테고리의 다른 글
[MSSQL/ERROR] MSSQL IN절 2100개 파라미터 제한 문제 해결: 대량 데이터 안전하고 효율적으로 조회하기 (0) | 2024.07.12 |
---|---|
[MSSQL] DB Connection Pool 조회 및 연결된 세션 정보 조회 쿼리 (0) | 2024.02.21 |
[DB] SELECT Query 실행 순서 (0) | 2023.08.20 |
[MySQL] 형변환 CAST 함수 / CONVERT 함수 사용 방법 (0) | 2023.04.18 |
[MySQL] Too many connections 에러 - Connection 수 확인 (0) | 2022.12.22 |