MySQL을 실행하는 Amazon Relational Database Service(Amazon RDS) 인스턴스에 대한 서버 활동을 보려면 어떻게 해야 합니까?

서버 활동을 이용하면 InnoDB 스토리지 엔진의 상태를 보고, 실행 중인 쿼리를 확인하고, 인스턴스의 교착 지점을 찾아내는 등 성능 문제의 원인을 파악하는 데 도움이 됩니다.

MySQL PROCESS 서버 관리자 권한이 있어야 MySQL 인스턴스에서 실행되는 모든 스레드를 볼 수 있습니다. 관리자 권한이 없으면 SHOW PROCESSLIST에 현재 사용 중인 MySQL 계정과 관련된 스레드만 표시됩니다. 또한 MySQL PROCESS 서버 관리자 권한이 있어야 SHOW ENGINE을 사용하고 InnoDB 스토리지 엔진 상태에 대한 정보를 볼 수 있습니다.

인스턴스에 대한 서버 활동을 보려면 다음 단계를 따르십시오.

1.    MySQL 인스턴스에 대해 일반 및 느린 쿼리 로그를 활성화합니다.

2.    MySQL 데이터베이스 엔진을 실행하는 DB 인스턴스에 연결합니다.

3.    다음 명령을 실행합니다:

SHOW FULL PROCESSLIST\G
SHOW ENGINE INNODB STATUS\G

참고: 각 명령문의 처음 100자 이상을 보려면 FULL 키워드를 사용하십시오.

4.    대기 중인 트랜잭션과 그 트랜잭션을 차단 중인 트랜잭션을 보려면:

SELECT r.trx_id waiting_trx_id, r.trx_mysql_thread_id waiting_thread, r.trx_query waiting_query, b.trx_id blocking_trx_id, b.trx_mysql_thread_id blocking_thread, b.trx_query blocking_query FROM information_schema.innodb_lock_waits w INNER JOIN information_schema.innodb_trx b ON b.trx_id = w.blocking_trx_id INNER JOIN information_schema.innodb_trx r ON r.trx_id = w.requesting_trx_id;

참고: 모범 사례는 짧고 연속적인 간격(예: 60초)으로 이러한 출력을 수집하는 것입니다. 복수의 출력을 검토하면 엔진 상태를 더 폭넓게 파악할 수 있고, 그러면 성능 문제를 해결하는 데 도움이 됩니다.


페이지 내용이 도움이 되었습니까? | 아니요

AWS 지원 지식 센터로 돌아가기

도움이 필요하십니까? AWS 지원 센터를 방문하십시오.

게시됨: 2015년 7월 7일

업데이트됨: 2018-09-18