MySQL 의 Query Profiler 사용
우선 현재 my sql 에서 proleer 가 열 렸 는 지 확인 할 수 있 습 니 다.
- mysql> SELECT @@profiling;
- +-------------+ | @@profiling | +-------------+ | 0 | +-------------+ 1 row in set (0.00 sec)
프로필 러 열기:
- mysql> SET profiling = 1;
- Query OK, 0 rows affected (0.00 sec)
Query Profiler 기능 을 켜 면 MySQL 은 실행 중인 모든 Query 의 profile 정 보 를 자동 으로 기록 합 니 다.다음 쿼 리 실행:
- mysql> select count(*) from order_items;
- +----------+
- | count(*) |
- +----------+
- | 154258 |
- +----------+
- 1 row in set (0.62 sec)
-
- mysql> show profiles;
- +----------+------------+------------------------------------+
- | Query_ID | Duration | Query |
- +----------+------------+------------------------------------+
- | 1 | 0.04020500 | select * from orders where id=2090 |
- | 2 | 0.02056800 | select count(*) from t1 |
- | 3 | 0.00059800 | select count(*) from t1 |
- | 4 | 0.00036700 | ser profiler=0 |
- | 5 | 0.00053300 | select @@profiling |
- | 6 | 0.62734100 | select count(*) from order_items |
- +----------+------------+------------------------------------+
- 6 rows in set (0.00 sec)
개요 정 보 를 가 져 오 면 개요 정보 에 있 는 QueryID 는 어떤 Query 가 실행 하 는 과정 에서 상세 한 profflee 정 보 를 가 져 옵 니 다.CPU 와 IO 소 모 를 보 려 면 다음 과 같이 구체 적 으로 조작 하 십시오.
- mysql> show profile cpu, block io for query 6;
- +----------------------+----------+----------+------------+--------------+---------------+
- | Status | Duration | CPU_user | CPU_system | Block_ops_in | Block_ops_out |
- +----------------------+----------+----------+------------+--------------+---------------+
- | starting | 0.000064 | 0.000000 | 0.000000 | 0 | 0 |
- | checking permissions | 0.000015 | 0.000000 | 0.000000 | 0 | 0 |
- | Opening tables | 0.390653 | 0.000000 | 0.000000 | 0 | 0 |
- | System lock | 0.000028 | 0.000000 | 0.000000 | 0 | 0 |
- | init | 0.000019 | 0.000000 | 0.000000 | 0 | 0 |
- | optimizing | 0.000010 | 0.000000 | 0.000000 | 0 | 0 |
- | statistics | 0.000017 | 0.000000 | 0.000000 | 0 | 0 |
- | preparing | 0.000015 | 0.000000 | 0.000000 | 0 | 0 |
- | executing | 0.000011 | 0.000000 | 0.000000 | 0 | 0 |
- | Sending data | 0.235932 | 0.036002 | 0.000000 | 0 | 0 |
- | end | 0.000018 | 0.000000 | 0.000000 | 0 | 0 |
- | query end | 0.000018 | 0.000000 | 0.000000 | 0 | 0 |
- | closing tables | 0.000023 | 0.000000 | 0.000000 | 0 | 0 |
- | freeing items | 0.000500 | 0.000000 | 0.000000 | 0 | 0 |
- | logging slow query | 0.000009 | 0.000000 | 0.000000 | 0 | 0 |
- | cleaning up | 0.000009 | 0.000000 | 0.000000 | 0 | 0 |
- +----------------------+----------+----------+------------+--------------+---------------+
- 16 rows in set (0.03 sec)
show profile :
- SHOW PROFILE [type [, type] ... ]
- [FOR QUERY n]
- [LIMIT row_count [OFFSET offset]]
- type:
- ALL
- | BLOCK IO
- | CONTEXT SWITCHES
- | CPU
- | IPC
- | MEMORY
- | PAGE FAULTS
- | SOURCE
- | SWAPS
Optional
type
values may be specified to display specific additional types of information: ALL
displays all information BLOCK IO
displays counts for block input and output operations CONTEXT SWITCHES
displays counts for voluntary and involuntary context switches CPU
displays user and system CPU usage times IPC
displays counts for messages sent and received MEMORY
is not currently implemented PAGE FAULTS
displays counts for major and minor page faults SOURCE
displays the names of functions from the source code, together with the name and line number of the file in which the function occurs SWAPS
displays swap counts 메모:Profiling 은 하나의 session 만 을 대상 으로 합 니 다.session 이 끝나 면 profiling 정 보 를 잃 어 버 립 니 다!
4.567914.
다음 두 문장의 출력 결 과 는 일치 합 니 다.
- mysql>SHOW PROFILE FOR QUERY 6;
-
mysql>SELECT STATE, FORMAT(DURATION, 6) AS DURATION
FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID = 6 ORDER BY SEQ; INFORMATION_SCHEMA profiling profiling ,
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL에서 JSON 인덱싱 - aarondfrancis사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 말하지만 완전히 정확하지는 않습니다. MySQL로 JSON 열을 인덱싱하는 것은 완전히 가능합니다! 사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.