Diagnostic report
tee diag1.out; CALL sys.diagnostics(120, 30, 'current'); notee; --30초 간격으로 120 초동안 실행하면서 분석 리포트 생성 |
-. Oracle의 AWR이나 Tibero의 TPR 처럼 Snapshot을 기록해두고 성능을 추출하는 기능은 없어보인다.
-. Mysql에서는 Diagnositc report를 job으로 등록해서 지나간 시점에 대해 분석을 해야할 듯 하다.
MySQL 중요 Schema
performance_schema | information_schema | |
주요 목적 | 성능 데이터의 수집 | 메타 데이터의 수집 |
애플리케이션 | 성능 개선 | 감시 도구이자 관리 도구 |
도입된 버전 | 5.5 | 5.0 |
SQL 표준 | 아님(MySQL 독자 기능) | 맞음 |
설치방법 | 스토리지 엔진으로 설치 | infomation schema API |
데이터 수집 방법 | mysqld 내부에서 코드를 실행할 때마다 | information schema 테이블 접근 시 |
통상적인 오버 헤드 | 있음 | 없음 |
출력에 의한 오버 헤드 | 적음 | 많음 |
유사 툴 | DTrace/SystemTap | 각종 SHOW 명령어 |
- DB별 유용한 view 비교
mysql | oracle | tibero | |
version | sys.version information_schema.ENGINES |
v$version | v$version |
Session | sys.x$session | v$session | v$session |
Memory | mysql.server_cost sys.memory_by_host_by_current_bytes sys.memory_by_thread_by_current_bytes sys.memory_by_user_by_current_bytes |
v$statname v$sesstat - 위 2개 view를 조합하여 PGA, CPU사용량 조회 v$sga v$process(PGA Used 확인) |
v$statname v$process(CPU time, PGA Used 확인) |
Lock | sys.schema_table_lock_waits; sys.innodb_lock_waits |
v$lock | vt_wlock v$lock |
parameter 조회 | information_schema.parameters | v$parameters | v$parameters |
#참고자료
https://dev.mysql.com/doc/refman/8.0/en/sys-diagnostics.html
MySQL :: MySQL 8.0 Reference Manual :: 28.4.4.2 The diagnostics() Procedure
28.4.4.2 The diagnostics() Procedure Creates a report of the current server status for diagnostic purposes. This procedure disables binary logging during its execution by manipulating the session value of the sql_log_bin system variable. That is a restric
dev.mysql.com
http://cloudrain21.com/everything-of-mysql-performance-schema
MySQL 성능분석도구 이야기(PERFORMANCE_SCHEMA) - Rain.i
All about IT tech, especially database, cloud, linux, clustering.
cloudrain21.com
'Database > MYSQL' 카테고리의 다른 글
[MYSQL] 이중화 구성 (MMM, MHA, Replication, Gerea cluster) (0) | 2022.11.11 |
---|---|
[MYSQL] Replication (Master-Slave 동기화) (0) | 2022.11.08 |
[MYSQL] PLAN 확인 방법 (예측, 실제계획) (0) | 2022.11.01 |
[MYSQL] 실행된 SQL 쿼리 확인 (0) | 2022.10.30 |
[MYSQL] Cluster Index (0) | 2022.10.30 |