강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

minuk님의 프로필 이미지
minuk

작성한 질문수

비전공자도 이해할 수 있는 MySQL 성능 최적화 입문/실전 (SQL 튜닝편)

[실습] 유저 이름으로 특정 기간에 작성된 글 검색하는 SQL문 튜닝하기

쿼리 결과 그리드에서 TYPE, POSSIBLE_KEYS 다릅니다

해결된 질문

작성

·

34

·

수정됨

0

image.pngimage.png

 상단의 스크린샷이 저의 로컬에서 확인된 거구요

아래는 선생님의 결과 입니다

KakaoTalk_20251028_060414532_01.jpg.webp

 

KakaoTalk_20251028_060414532.jpg.webp

 

[실습] 유저 이름이름 특정기간에 작성된 글 검색하는 SQL문 튜닝하기

3:30초 구간 입니다

 

똑같이 했는데 왜 TYPE과 KEY 변경되어 있을까요?

제가 잘못하고 있는건가요? 따라 쓴거도 아니고 NOTION에 있는걸 복붙 했습니다 ;;;

 

답변 3

0

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

안녕하세요 ! 질문 잘해주셨어요 !

질문해 주신 내용에 대해 답변드려볼게요!

 

"똑같이 했는데 왜 TYPE과 KEY 변경되어 있을까요?제가 잘못하고 있는건가요?"

-> 전혀 잘못하신 게 아니에요 !

더미 데이터를 생성하기 위해 RAND() 함수를 사용했었는데,

이로 인해 데이터 분포가 매번 달라져 MySQL 옵티마이저의 실행 계획이 약간 달려져서 그런거예요 !

실행 계획이 조금 다르더라도 인덱스를 잘 사용하고 있으니 이상이 없어요 :)

 

추가로 궁금하신 점 있으시면 또 질문 남겨주세요~~

0

minuk님의 프로필 이미지
minuk
질문자

image.png

같은 MySQL VER 8버젼 이상입니다 음 세팅값이라... 우선 뭐 알겠습니다

0

안녕하세요, 인프런 AI 인턴입니다. minuk님이 질문해주신 내용에 대해 답변 드리겠습니다.

최적화된 쿼리 결과가 강사님과 다르게 나오는 것은 여러 이유로 인해 발생할 수 있습니다. SQL 실행 계획(EXPLAIN)에서 TYPEKEY가 변경되어 있는 것에 대한 이유를 파악하기 위해 다음 사항을 고려해 보세요:

1. 데이터베이스 구조 및 인덱스:

  • 강사님과 동일한 데이터베이스 구조와 인덱스가 설정되어 있는지 확인하세요. 인덱스의 유무나 차이에 따라 TYPEKEY가 다르게 나타날 수 있습니다.
  • 관련 게시물: 질문이있습니다.에서는 인덱스 및 SQL 최적화에 관한 내용을 확인하실 수 있습니다.

2. 데이터의 차이:

  • 데이터베이스에 저장된 데이터의 양이나 분포가 실행 계획에 영향을 줄 수 있습니다. 데이터 분포가 다르면 EXPLAIN 결과도 다르게 나올 수 있습니다.

3. MySQL 버전 차이:

  • 사용 중인 MySQL 또는 기타 SQL 엔진의 버전이 강사님과 다른 경우, 동일한 쿼리에 대해서도 다른 최적화 전략을 사용할 수 있습니다.

4. 쿼리 캐싱:

  • 쿼리 캐시나 기타 최적화 옵션 설정이 달라서 실행 계획에 차이가 있을 수 있습니다.

5. 환경 설정:

  • 로컬 환경과 강사님의 실행 환경의 설정이 다를 수 있습니다. 예를 들어, SQL 모드나 세팅 값(예: optimizer_switch)에 따라 실행 계획이 달라질 수 있습니다.

가능한 한 강사님의 환경과 동일하게 설정하고 테스트해 보는 것도 방법입니다. 데이터와 환경의 미세한 차이가 실행 계획에 영향을 미칠 수 있으므로 주의깊게 비교해 보시길 권장드립니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

minuk님의 프로필 이미지
minuk
질문자

음 .... 처음부터 강의를 듣고 있었고 중복된 테이블이 없는지 확인 했으며 ,drop table 쿼리도 실행하고 새로 생성해서 했습니다.

 

뭔가 제가 잘못 하고 있는것 같은데 추상적인 답변 말고 확실한 답변 알고 계실까요?

minuk님의 프로필 이미지
minuk
질문자

이유를 알았네요 ㄷㄷㄷ ;; 그럼 수고하세요

minuk님의 프로필 이미지
minuk

작성한 질문수

질문하기