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

isjong00님의 프로필 이미지
isjong00

작성한 질문수

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

[실습] WHERE문이 사용된 SQL문 튜닝하기 - 2

MariaDB 사용 시 EXPLAIN ANALYZE 이용 불가 문의

작성

·

37

0

MariaDB 사용하고 있고 버전은 아래와 같은데 회사 DB로 버전 변경은 불가능한 상태입니다.

 

버전 : 10.4.12-6-MariaDB-enterprise-log

 

EXPLAIN ANALYZE 사용 시 에러가 발생하여 구글링 해보니 MariaDB 에서는 사용이 불가능한 것 같더라고요.

Mysql 에서 EXPLAIN ANALYZE 로 조회되는 내용을 동일하거나 유사하게 볼 수 있는 방법이 없을까요?

답변 2

1

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

안녕하세요 isjong00님!

 

질문해주신 내용 바탕으로 저도 검색을 조금 해봤는데

MariaDB에서는 EXPLAIN ANALYZE 대신에 ANALYZE TALBE 라는 명령어를 활용해야 할 것 같습니다.

다만, MySQL에서 출력하는 결과의 형태가 MariaDB의 출력 결과의 형태와는 달라서

별도로 MariaDB의 출력 결과를 보는 방법을 따로 익히셔야 할 것 같습니다!

그래도 데이터베이스가 가지고 있는 핵심적인 개념들은 비슷하므로

해당 강의 내용을 기반으로 성능 최적화의 큰 방향성을 먼저 잡으셔도 좋을 것 같습니다~!!

참고하시면 좋은 링크 아래에 같이 남겨둘게요~!!

https://runebook.dev/ko/docs/mariadb/analyze-statement/index

 

이 외로 궁금하신 점 생기시면 또 질문 남겨주세요~~

0

안녕하세요, 인프런 AI 인턴입니다. isjong00님, 질문 주셔서 감사합니다.

지금 사용 중이신 MariaDB 10.4에서는 EXPLAIN ANALYZE 기능을 직접 지원하지 않아 불편을 겪고 계신 듯합니다. EXPLAIN ANALYZE는 주로 MySQL에서 사용되어 쿼리 실행의 실제 동작을 평가하는 데 사용되었습니다.

하지만 MariaDB에서도 유사한 기능을 활용할 수 있는 방법이 있습니다. MariaDB의 경우 EXPLAIN FORMAT=JSON을 사용하여 쿼리 실행 계획에 대한 자세한 정보를 얻을 수 있습니다. 이 형식은 쿼리 실행 계획의 다양한 측면을 포괄하고 있어 성능 튜닝에 도움이 될 수 있습니다.

여기 예시를 들어볼게요:

EXPLAIN FORMAT=JSON SELECT * FROM your_table WHERE condition;

FORMAT=JSON 옵션을 사용하면 실행 계획에 대한 보다 깊이 있는 정보들을 JSON 포맷으로 제공합니다. 이를 통해 쿼리가 어떻게 실행되는지에 대한 통찰력을 얻고, 성능 문제를 식별하거나 해결책을 찾는 데 도움이 될 수 있습니다.

관련해서 좀 더 구체적인 최적화 방법이나 사례를 찾으신다면, 더 많은 자료를 통해 학습하시는 것도 추천해드립니다. 다음과 같은 링크를 참조해보세요:

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

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

EXPLAIN FORMAT=JSON 사용해보니 time 정보는 제공되지 않는데 어디에서 시간이 얼마나 소요됐는지 확인할 수 있는 방법이 있을까요?

isjong00님의 프로필 이미지
isjong00

작성한 질문수

질문하기