웹 시스템이 aws로 마이그레이션되고 대부분의 영역이 정상적인 것처럼 보입니다. aws 측면에서 매우 느린 웹 시스템에서 하나의 특정 클릭이 있습니다. 나는 이전 시스템과 비교하기 위해 실행되는 mysql 쿼리를 찾을 수 있었고 모든 것이 동일하다. 인덱스도 마찬가지였다.다른 속도로 실행되는 MySQL 쿼리
select distinct cf_1274 from vtiger_cf_1274
inner join vtiger_role2picklist on vtiger_role2picklist.picklistvalueid = vtiger_cf_1274.picklist_valueid
where roleid in ("H3","H4","H5","H51","H50","H49","H2") and picklistid in (select picklistid from vtiger_cf_1274)
order by sortid asc
내가 둘 사이에 볼 수있는 유일한 차이점은 기존의 MySQL 서버 버전은 5.0.95이다이고 최신 버전은 내가도를 실행 할 수 있었다 5.6.X
입니다 아래 쿼리는 둘 다에 설명하고 이것이 내가 차이점을 보았던 곳이다. 새로운 시스템은 몇 가지 "Join Buffer 사용 (Block Nested Loop)"을 Explain 질의의 추가 열에서 사용 했었습니다. 임이 이슈가되어야한다고 생각하지만, 어떻게 접근해야할지 모르겠습니다.
질문을 잊어 버렸을 것입니다. – Ibu
왜'and picklistid in (picklistid from vtiger_cf_1274 선택)'이 필요합니까? 항상 사실이 아닌가? – Fabricator
블록 중첩 루프는 RDS 매개 변수 그룹의 매개 변수 중 하나 였으므로 종료되었습니다. 이것은 속도 문제를 해결했습니다. 문제는 MySQL 서버 5.0.X 대 5.6.X에 설정된 다른 기본값이 있다는 것입니다. – Monzingo