mysql - error count, max_connections, wait_timeout 설정

sangwoo noh·2022년 7월 15일
0

mysql

목록 보기
6/11

현재 상태 확인

$ show status like '%CONNECT%';
  • Aborted_connects: MySQL 서버 접속이 실패된 count
  • Connections: 연결된 쓰레드 count
  • Max_used_connections: 최대로 동시에 접속한 count
  • Threads_connected: Thread Cache의 Thread count
$ show status like '%thread%';
  • Threads_connected: 현재 연결된 Thread 수
  • Threads_created: 접속을 위해 생성된 Thread 수
  • Threads_running: Sleeping 되어 있지 않은 Thread 수

max_connect_errors 확인

$ mysql > select @@global.max_connect_errors;

max_connect_errors 변경

$ mysql > set global max_connect_errors=10000;

에러 카운트 초기화

$ mysql > flush hosts;

max_connections 카운트 확인

$ mysql > select @@global.max_connections;

max_connections 변경

$ mysql > set global max_connections=10000;

또는?

  • mysql을 재시작 하지 않아도 적용됨

timeout의 종류

interactive_timeout
  • mysql> 과 같은 콘솔이나 터미널 모드(대화형 클라이언트)에서 mysqld와 client가 연결을 맺은 다음 요청을 기다리는 최대시간
wait_timeout
  • API를 이용한 client 프로그램(PHP, JDBC, ODBC...) 상에서 최대 연결시간을 말하며, 설정된 시간 동안 아무 요청이 없으면 연결은 취소되고 다시 요청이 들어오면 자동으로 연결이 맺어진다. 현재 설정된 값을 확인 하시려면 아래와 같은 명령으로 확인 가능하다.

접속 지속시간 확인

$ show global variables like '%timeout%';

접속 지속시간 변경

$ set wait_timeout=60;

cli에서 접속시간 확인 문제?

$ show variables like 'wait_timeout';
에서는 확인이 안된다,
왜냐하면 interactive mode로 접속을했기때문에 interactive timeout 설정값을 보여준다.
wait timeout을 확인하고 싶으면
$ show global variables like '%timeout%';
이걸로 확인하면 된다.
profile
하기로 했으면 하자

0개의 댓글