해당 문서는 "Real Mysql 8.0" 서적을 참고하여 도출한 내용 입니다.
(아래 링크는 전혀 수익의 댓가가 없습니다. 오로지 공유 목적 입니다.)
https://book.naver.com/bookdb/book_detail.nhn?bid=20877661
- General log 는 모든 쿼리가 남아 쿼리의 내역을 모두 확인이 힘든 경우 발생
- Percona의 pt-query-digest 를 이용하여 general log를 분석 가능
- RDS MySQL 5.7.19에서 발생한 General log 를 이용하여 아래 테스트를 진행
Real Mysql 8.0 (151 page)
Percona에서 개발한 Percona Toolkit 의 pt-query-digest 스크립트를 이용하면 쉽게 빈도나 처리 성능별로 쿼리를 정렬해서 살펴볼 수 있다.
현재 Local machine이 Windows 라 percona toolkit 을 바로 설치할 수 없었고, WSL 를 이용하여 진행 했습니다.
percona tookit 설치 진행
Percona-toolkit : https://www.percona.com/doc/percona-toolkit/3.0/installation.html
WSL 설치
https://docs.microsoft.com/ko-kr/windows/wsl/install
이렇게 설치까지 끝나고 나면 직접 General log를 AWS RDS 에서 다운받고 분석 진행 하면 됩니다.
여기서 WSL 로 파일 복사는 간단합니다.
windows 폴더에서 아래 위치를 찾아가서 옮기면 됩니다.
C:\Users\<컴퓨터명>\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_<고유번호?>\LocalState\rootfs\home\<유저>
general log를 pt-query-digest 로 분석 진행 합시다.
명령어 : pt-query-digest --type='genlog' General로그파일명 > 분석파일명
$ pt-query-digest --type='genlog' mysql-general.log.2021-10-28.0 > db5-2-general.log
실재 실행한 내역
- 실행하면 아래와 같이 분석 완료까지 얼마나 남았는지 시간과 비율을 보여줘서 좋더군요.
Output 파일 내용
General log 분석에 많은 도움이 되었습니다!
Slow query 의 경우에는 아래 명령어로 진행 하면 됩니다.
(Real Mysql 8.0 서적 152page 참고)
pt-query-digest --type='slowlog' mysql-slow.log > slowlog.log
반응형
'MySQL' 카테고리의 다른 글
[MySQL] InnoDB Adaptive Hash index [펌] (0) | 2018.04.16 |
---|---|
[MySQL] ARCHIVE Engine (0) | 2017.07.19 |
[펌][MySQL] CockroachDB in Comparison (0) | 2017.07.03 |
[펌] [MyISAM] myisamchk 사용하기 (0) | 2016.11.25 |
[MySQL] auto_increment duplicate entry for key 1 (0) | 2016.11.14 |