내 응용 프로그램에서 다시 작성해야하는 느린 mySQL 쿼리가 있습니다. 문제는 내 프로덕션 서버에서만 느리고 캐시되지 않는 경우입니다. 처음 실행하면 12 초가 걸리며 그 후 언제든지 500 밀리 초가 걸릴 것입니다.MySQL 단일 쿼리 벤치마킹 전략
리팩토링의 결과를 볼 수 있도록 쿼리 캐시없이이 쿼리를 테스트하는 쉬운 방법이 있습니까?
감사합니다.
내 응용 프로그램에서 다시 작성해야하는 느린 mySQL 쿼리가 있습니다. 문제는 내 프로덕션 서버에서만 느리고 캐시되지 않는 경우입니다. 처음 실행하면 12 초가 걸리며 그 후 언제든지 500 밀리 초가 걸릴 것입니다.MySQL 단일 쿼리 벤치마킹 전략
리팩토링의 결과를 볼 수 있도록 쿼리 캐시없이이 쿼리를 테스트하는 쉬운 방법이 있습니까?
감사합니다.
MySQL은 단일 쿼리 캐싱을 방지합니다.
SELECT SQL_NO_CACHE field_a, field_b FROM table;
이 대안으로 현재 세션에 대한 쿼리 캐시를 diasble 수보십시오 : 제가 할 것은,
SET SESSION query_cache_type = OFF;
은 요하네스의 좋은 답변에 추가하려면 참조
RESET QUERY CACHE;
약간의 이점이 있습니다. 내가 실행중인 문장이나 연결에 어떤 변경도 요구하지 않는다.
하찮은 일은 쿼리가 임의의 이전 쿼리와 바이트 일치하는 경우에만 캐시에 있기 때문에 어떻게 든 실행중인 문을 주석에 넣는 것과 같이 변경하는 것입니다.