프로젝트

일반

사용자정보

Actions

새기능 #5663

완료됨

사용자 로그 조회 쿼리 성능 개선

이호영이(가) 5일 전에 추가함. 5일 전에 수정됨.

상태:
완료
우선순위:
보통
담당자:
시작시간:
2026/01/30
완료기한:
진척도:

0%

추정시간:
소요 시간:
난이도:
Actions #1

이호영이(가) 5일 전에 변경

  • 상태을(를) 신규에서 완료(으)로 변경되었습니다.

문제: selectNWebLog 쿼리 조회 속도 느림 (LETTNLOGINLOG 약 17만 건)

원인:

  • 콤마 조인(암묵적 CROSS JOIN) 사용으로 비효율적 실행계획
  • 날짜 비교 시 DATE_FORMAT() 함수 사용으로 인덱스 미활용

해결:

  1. EgovLoginLog_SQL_Mysql.xml의 selectNWebLog 쿼리 수정 -- 변경 전: FROM a, b (콤마 조인) -- 변경 후: FROM b INNER JOIN a ON ... (명시적 조인)

-- 변경 전: DATE_FORMAT(b.CREAT_DT, '%Y.%m.%d') >= #searchStartDt#
-- 변경 후: b.CREAT_DT >= STR_TO_DATE(#searchStartDt#, '%Y.%m.%d')

  1. 인덱스 생성 (DB) CREATE INDEX IDX_LETTNLOGINLOG_PROGRM ON LETTNLOGINLOG (PROGRM_FILE_NM, CREAT_DT); CREATE INDEX IDX_LETTNADMINMETHOD_METHOD ON LETTNADMINMETHOD (METHOD_NM, USE_YN, METHOD_CD);

수정 파일

  • src/main/resources/egovframework/sqlmap/let/sym/log/clg/EgovLoginLog_SQL_Mysql.xml
    • logInsertWebLoginLogNewStep3_bak: use_yn 컬럼 추가
    • selectNWebLog: 조인 방식 및 날짜 비교 최적화
Actions

내보내기 Atom PDF