MySQL의 실행 중인 쿼리를 중지하기 전에 먼저 show 명령을 사용하여 몇 개의 프로세스가 실행되고 있는지 확인해야 합니다.
이에 대한 쿼리는 다음과 같이 제공됩니다. -
mysql> show processlist;
위의 쿼리를 실행한 후 일부 ID가 포함된 출력을 얻을 수 있습니다. 이것은 다음과 같이 주어집니다 -
+----+-----------------+-----------------+----------+---------+-------+------------------------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+-----------------+-----------------+----------+---------+-------+------------------------+------------------+ | 4 | event_scheduler | localhost | NULL | Daemon | 71034 | Waiting on empty queue | NULL | | 8 | Manish | localhost:53496 | business | Query | 0 | starting |show processlist| +----+-----------------+-----------------+----------+---------+-------+------------------------+------------------+ 2 rows in set (0.00 sec)
위의 출력에서 알 수 있듯이 현재 사용중인 db는 'business'입니다. id는 8입니다. 쿼리를 중지하려면 프로세스 목록에 있는 주어진 id와 함께 명령 호출을 사용할 수 있습니다. 이에 대한 구문은 다음과 같습니다 -
call mysql.rds_kill(valueOfGivenIdInProcesslist);
이제 위의 구문이 쿼리에 적용되고 valueOfGivenIdInProcesslist가 8로 지정됩니다. 이는 다음과 같습니다. -
mysql> CALL mysql.rds_kill(8);
위의 쿼리를 실행한 후 다음과 같은 출력을 얻습니다. -
ERROR 2013 (HY000): Lost connection to MySQL server during query
이는 위의 쿼리 실행이 중지될 때 발생합니다. use 명령은 중지되었는지 여부를 확인하는 데 사용됩니다. 이에 대한 구문은 다음과 같습니다 -
use yourDatabaseName;
위의 구문은 시스템의 mydatabase 이름 'business'에 적용됩니다. 쿼리는 다음과 같습니다 -
mysql> use business;
위의 쿼리를 실행한 후 다음과 같은 출력을 얻습니다. -
No connection. Trying to reconnect... Connection id: 10 Current database: *** NONE *** Database changed mysql>
따라서 MySQL에서 "Trying toreconnect..."라는 메시지가 나오므로 쿼리가 중지된 것이 분명합니다. 또한 현재 데이터베이스가 "없음"임을 보여줍니다. 잠시 후 데이터베이스와의 연결이 재개됩니다.