목표
Aurora 성능 저하의 원인인 Slow 쿼리 찾는 순서는 알아보자.
<1> 현황 확인과 Aurora slow 쿼리 로그 활성화하기
<2> cloudwatch metric 만들기
<3> RDS 성능 보기
<4> Query 최적화
<5> Auto scaling 설정으로 개선하기
<1> 현황 확인과 Aurora slow 쿼리 로그 활성화하기
1
RDS > 데이터베이스 > DB클릭 > 수정 > Log 내보내기 > 느린 쿼리 로그 체크 > 계속 > 클러스터 수정.
2.
DB 파라미터 그룹은 2개가 있다.
1) DB 클러스터 파라미터 그룹
2) DB 파라미터 그룹
3
DB 파라미터 그룹 생성 하기
RDS > 파라미터 그룹 > aurora 5.6 > 파라미터 그룹 > 파라미터 그룹 생성하기 > 그룹 이름
slow-seo-db1
slow-seo-db1
생성
1)
slow-seo-db1 파라미터 그룹 수정하기
2)
파라미터 그룹 > slow-seo-db1 > 파라미터 편집 > slow_query_log > 1
변경사항 저장
3)
long_query_time > 2 > 변경사항 저장
// 실행하는데 2초 이상 걸리는 모든 쿼리가 기록된다.
4)
log_output > File로 변경 > 변경 사항 저장
5)
query_cache_type > 2 > 변경 사항 저장
4. 역할 칼럼 - 읽기 데이터 베이스 수정하기
1)
데이터베이스 > 역할 칼럼 - 읽기 클릭 > 수정
2)
데이터 베이스 옵션 > DB 파라미터 그룹 > slow-sep-db1로 변경하기 > 계속 >
3)
수정사항 요약 > 즉시 적용으로 변경 > DB 인스턴스 수정
// 수정 중으로 표시된다. 완료되는데 20분 걸린다.
4)
작업 > 재부팅 > 재부팅
// 완료되는데 20분 걸린다.
5. 로그 확인하기
데이터 베이스 > 역할 읽기 DB 선택 > 로그 및 이벤트 탭 > 로그
slowquery/mysql-slowquery.log
> slowquery/mysql-slowquery.log 보기
닫기
6. DB 연결
1)
EC2 서버 접속 하기
2)
DB 접속하기
mysql -u dbadmin -p -h xxxxxxxxxxxxxx.us-west-2.rds.amazonaws.com
Enter password :
3)
DB 사용하기
USE imdb;
query 1
selete xxxxxxxxxxxxx
// 5분 걸린다.
query 2
<2> Cloudwatch metric 만들기
1
서비스 > cloudwatch > log / log group
insights > select log groups > slow query
2
// 쿼리 실행
action > add to dashboard
add to dashboard
save dashboard
3
services > cloudwatch > Log groups 확인
4
services > cloudwatch > insights > Select log group에서 선택
// 코드 입력
> 쿼리 실행
5
오른쪽 아래 Add to dashboard > 선택 > add to dashboard
<3> RDS 성능 보기
Services > RDS > performance insights > 2개 중 reader 클릭
<4> Query 최적화
1.
DB 접속하기
mysql -u (DBUserName) -p -h (readDBClusterEndpoint)
2
USE db이름;
SHOW TABLES;
DESCRIBE name_display;
3
분석 1
//쿼리
분석 2
//쿼리
4
# Cloudwatch
Cloudwatch > 로그 그룹 > 로그 그룹 선택
5
# RDS
RDS > perfromance insights > reader
<5> Auto scaling 설정으로 개선하기
1.
RDS > 데이터 베이스 > 해당 데이터베이스 > 작업 > 복제본 auto scaling 추가 > Policy name
db-auto-scaling
2
대상 측정치
50
300초
60
1
8
정책 추가
3
트래픽 발생 서버로 접속
// 트래픽 발생시키기
4
확인
Aurora RDS > 데이터 베이스 > 해당 DB클릭 > 모니터링
<6>
https://aws.amazon.com/ko/about-aws/whats-new/2019/05/performance-insights-global-datatabase/
감사합니다.