강좌
클라우드/리눅스에 관한 강좌입니다.
데이터베이스 분류

mysqladmin으로 접속되어있는 MYSQL사용자(threads)의 접속 끊기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

mysqladmin으로 접속되어있는 MYSQL사용자(threads)의 접속 끊기

 

 

 

 

 

 

MYSQL의 관리 유틸리티 mysqladmin을 이용하면 현재 MYSQL을 사용하고있는 사용자(스레드, threads)의 접속을 선택적으로 종료할 수 있다.

 

 

 

 

  mysqladmin kill명령어를 사용하면 특정사용자의 접속(스레드, threads)만을 종료 할 수 있다.

 

 

 

 

  이를 위하여 MYSQL의 스레드(threads)를 확인해야하는데 앞에서 설명드렸던 mysqladmin processlist라는 명령어를 이용하면 MYSQL의 스레드를 확인 할 수 있다.

 

 

 

 

  사용하는 형식은 다음과 같다.

 

 

 

 

 

 

사용형식 : mysqladmin -u root -p kill 스레드번호

 

 

 

 

다음 예는 mysqladmin을 이용하여 현재 MYSQL을 사용하고있는 sspark사용자의 스레드(threads)를 종료한 것이다.

 

 

 

 

 그리고 다시 “./mysqladmin -u root -p processlist”를 실행하여 sspark MYSQL 접속이 종료되었는가를 확인하였다.

 

 

 

 

 

 

[root@sulinux bin]#/usr/local/mysql/bin/mysqladmin -u root -p processlist

Enter password: ********

+----+----------+-----------+------------+---------+------+-------+------------------+

| Id | User     | Host      | db         | Command | Time | State | Info             |

+----+----------+-----------+------------+---------+------+-------+------------------+

| 9  | picasso  | localhost | picasso_db | Sleep   | 92   |       |                  |

| 10 | sspark   | localhost | sspark_db  | Sleep   | 88   |       |                  |

| 11 | tempuser | localhost | temp_db2   | Sleep   | 83   |       |                  |

| 13 | root     | localhost |            | Query   | 0    |       | show processlist |

+----+----------+-----------+------------+---------+------+-------+------------------+

[root@sulinux bin]#

[root@sulinux bin]#/usr/local/mysql/bin/mysqladmin -u root -p kill 10

Enter password: ********

[root@sulinux bin]#

[root@sulinux bin]#/usr/local/mysql/bin/mysqladmin -u root -p processlist

Enter password: ********

+----+----------+-----------+------------+---------+------+-------+------------------+

| Id | User     | Host      | db         | Command | Time | State | Info             |

+----+----------+-----------+------------+---------+------+-------+------------------+

| 9  | picasso  | localhost | picasso_db | Sleep   | 103  |       |                  |

| 11 | tempuser | localhost | temp_db2   | Sleep   | 94   |       |                  |

| 15 | root     | localhost |            | Query   | 0    |       | show processlist |

+----+----------+-----------+------------+---------+------+-------+------------------+

[root@sulinux bin]#

 

 

 

 

먼저 “./mysqladmin -u root -p processlist”를 이용하여 현재 MYSQL의 사용자 스레드(threads)를 확인하였다.

 

 

 

 

  이때 확인된 사용자가 picasso, sspark, tempuser root임을 알 수 있으며 sspark ID10이라는 것도 확인 할 수 있다.

 

 

 

 

  이렇게 sspark사용자의 스레드(threads) ID를 확인한 후에 이 스레드를 종료시키기 위하여 “./mysqladmin -u root -p kill 10”을 실행한 것이다.

 

 

 

 

  sspark의 스레드 ID 10번이므로 10번 스레드를 종료시키게되면 sspark MYSQL접속이 종료된다.

 

 

 

 

 

 

이번 예에 대한 실무적인 활용은 특정사용자가 MYSQL의 자원을 과하게 많이 사용하여 서버 과부하를 유발한다면 특정사용자의 스레드(threads)를 종료함으로서 그 사용자의 MYSQL 접속을 끊어버리는 목적으로 활용 할 수 있다.

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,035 명
  • 현재 강좌수 :  35,791 개
  • 현재 접속자 :  83 명