테스트 시스템의 SQL문을 프로덕션 시스템에
배치했을 때 해당 SQL문에 대한 액세스 플랜이 동일하게 유지되는지
여부를 확인할 수 있습니다. 프로덕션 시스템의 액세스 플랜 중
하나에서 개선이 필요한 경우, 문제가 있는 SQL문을 튜닝하거나
테스트 시스템에서 사용되는 액세스 플랜으로 되돌릴 수 있습니다.
이 태스크 정보
이 프로시저에서 테스트 중인 애플리케이션에 대한 SQL문의
쿼리 워크로드를 작성합니다. 이 쿼리 워크로드를 튜닝한 후,
애플리케이션을 프로덕션 시스템에 배치합니다.
다음에는, 프로덕션 시스템에서 동일한 SQL문의 쿼리 워크로드를
작성합니다. 마지막으로, 테스트 시스템에서 SQL문이
사용한 액세스 플랜과 해당 명령문이 프로덕션 시스템에서
사용한 액세스 플랜을 비교합니다. 프로덕션 시스템의
액세스 플랜에 대한 유해한 변경사항이 있는 경우, 문제가 있는
명령문의 쿼리 워크로드를 작성 및 튜닝하거나 테스트 시스템의
액세스 플랜으로 되돌려서 문제점을 정정할 수 있습니다.
애플리케이션을 테스트 시스템에서 프로덕션 시스템으로
배치로 인한 액세스 플랜 변경사항을 식별하고 다루려면 다음을 수행하십시오.
다음에 수행할 작업
비교 실행기록 페이지에서 비교할
항목을 두 번 클릭하십시오.
워크로드 EXPLAIN 스냅샷 및
SQL문별로 비교 결과 보기 페이지에서,
명령문 테이블을 검토하여 두 EXPLAIN 스냅샷에서
차이를 갖는 명령문을 찾으십시오. 다른 사람과 결과를 공유해야 하는
경우, 테이블 위의
추가 조치 필드에서
비교 HTML 보고서 생성을
선택하십시오.
프로덕션 시스템의 액세스 플랜 또는
SQL문의 계산된 비용이 개선이 필요함을 확인하는 경우, 해당
명령문에서 쿼리 워크로드를 작성할 수 있습니다. 그런 다음
쿼리 워크로드를 튜닝할 수 있습니다. 워크로드 EXPLAIN 스냅샷 및
SQL문별로 검토 결과 보기 페이지의 추가
조치 페이지에서 튜닝을 위한 새 쿼리
워크로드 작성을 선택하십시오.
다른 방식은
프로덕션 시스템의 액세스 플랜을 테스트 시스템의 액세스 플랜으로
바꾸는 것입니다. 워크로드 EXPLAIN 스냅샷 및
SQL문별로 검토 결과 보기 페이지의 추가
조치 페이지에서 모든 SQL문에 대한
액세스 플랜 잠금을 선택하십시오. 이 방식을 선택하는
경우, 통계 개선이나 옵티마이저에 대한 개선을 포함하는
유지보수 적용 같이 액세스 플랜을 개선할 수 있는 시스템에
대한 변경사항이 사용자가 잠근 액세스 플랜에는 어떤 효과도
없음을 이해해야 합니다. 그러나 해당 액세스 플랜은 갑작스런
변경을 겪지 않으며 예상대로 실행합니다.