반응형
1. 현재 접속중인 유저 및 실행 중인 쿼리 확인
show full processlist;
-- 상세
select * from INFORMATION_SCHEMA.PROCESSLIST;
2. 해당 Thread 현황
-- 해당 Thread 현황
select * from information_schema.INNODB_TRX;
3. 마지막 해당 Thread에서 실행중(된) 쿼리 조회
-- 마지막에 해당 thread에서 실행중(된) 쿼리 조회
SELECT esc.THREAD_ID, t.processlist_id, esc.SQL_TEXT
FROM performance_schema.events_statements_current esc
/**********************************************************************************
processlist 에서 보여주는 mysql 이 만든 thread와
performance_schema 에서 만든 thread 값이 달라
threads 테이블을 참조해야 작업을 확인할 수 있다.
why? performance_schema.threads 는 background thread의 값도 가지고 있기 때문이다.
**********************************************************************************/
JOIN performance_schema.threads t ON t.thread_id = esc.thread_id
WHERE t.processlist_id = 56604
;
4. 실행된 쿼리 이력 확인 + 로그파일
-- 동적으로 파라메터 값 변경
set global general_log = 1;
set GLOBAL general_log='ON';
-- 정적으로 파라메터 값 변경 (재기도 필요)
# mysql
[mysqld]
#쿼리 로그가 출력되도록 설정
general_log=ON
# log_output= FILE | TABLE
# file로 내보내기
log_output=FILE
#로그파일 경로 설정
general_log_file=/var/log/mysql/general/mysql_general.log
5. 실행 속도가 느린 쿼리 확인
# 0:끄기,1:켜기
vim /etc/my.cnf slow_query_log=1
#로그파일 경로 설정
slow_query_log_file=/home/mysql/mysqld-slow.log
#5초이상 걸리는 쿼리
long_query_time=5
#MySQL 재기동
6. 쿼리 확인 (Tabel로 저장시)
SELECT * FROM mysql.general_log;
SELECT * FROM mysql.slow_log;
7. Test query
create table test1.test_tab3(c1 varchar(110),c2 varchar(110),c3 varchar(110),c4 varchar(110),c5 varchar(110));
DROP PROCEDURE IF EXISTS test1.test4;
DELIMITER $$
$$
CREATE PROCEDURE test1.test4()
BEGIN
DECLARE NUM1 INT DEFAULT 1;
WHILE(NUM1 < 10000) do
insert into test1.test_tab3 SELECT SUBSTR(MD5(RAND()),1,100) c1, SUBSTR(MD5(RAND()),1,100) c2, SUBSTR(MD5(RAND()),1,100) c3 ,SUBSTR(MD5(RAND()),1,100) c4 ,SUBSTR(MD5(RAND()),1,100) c5;
set NUM1 = NUM1 + 1;
COMMIT;
end while;
END;
$$
DELIMITER ;
call test1.test4();
반응형
'Database > MYSQL' 카테고리의 다른 글
[MYSQL] 성능 리포트 (0) | 2022.11.03 |
---|---|
[MYSQL] PLAN 확인 방법 (예측, 실제계획) (0) | 2022.11.01 |
[MYSQL] Cluster Index (0) | 2022.10.30 |
[MYSQL] Lock 구조 & Query (1) | 2022.10.27 |
[MYSQL] PMM 모니터링 (0) | 2022.10.21 |