2012-02-24 3 views
51

MySQL Workbench를 사용 중입니다. 쿼리 실행 시간과 가져 오기 시간의 차이점은 무엇입니까?mysql 기간 및 가져 오기 시간

또한 MySQL에서 microsecond 옵션을 활성화 할 수있는 방법이 있습니까?

+0

이상한 현상금. 모든 대답은 정확하지만 당신은 그 말을 믿지 않습니까? [여기] (http://forums.mysql.com/read.php?152,560430,560470#msg-560470) 및 [여기] (http://forums.mysql.com/read.php?152,560430) , 560610 # msg-560610)는 mysql 포럼에서 Oracle 용으로 일하는 Mike Lischke와 정확히 같은 답변입니다. 충분히 믿을만한가? –

답변

87

시간 가져 오기 결과 소요되는 시간 - 아무 상관이 긴 가져온 결과를 전송하는 방법 조치를 취할, 쿼리 실행과 관련이있다. 나는 그것을 SQL 쿼리 디버깅/최적화 옵션으로 생각하지 않을 것이다. 왜냐하면 가져 오기 시간은 네트워크 연결에 의존하기 때문이다.이 자체는 쿼리 최적화와 관련이 없다. 가져 오는 시간이 병목 현상이라면 네트워킹 문제가있을 가능성이 큽니다.

참고 : 가져 오기 시간은 쿼리를 실행할 때마다 달라질 수 있습니다.

지속 시간 - 쿼리를 실행해야하는 시간입니다. SQL 쿼리의 성능을 최적화 할 때이를 최소화해야합니다.

Reference

+3

최적화 퍼슨의 경우, 결과가 캐시의 영향을받지 않기 위해서는'query_cache_type' 옵션이 반드시'OFF'이어야한다는 것을 기억하십시오. http://stackoverflow.com/questions/181894/mysql-force-not-to-use-cache-for-testing-speed-of-query – dellasavia

+3

을 참조하십시오 ** 기간 **은 일반적으로 원하는 값임에 동의합니다. 최적화를 위해서는 쿼리의 효율성과 직접 관련이 있기 때문에 비정상적으로 높은 ** fetch ** 시간은 중요한 로직 오류 및/또는 비효율을 지적 할 수 있습니다. 예를 들어, 클라이언트가 캐싱해야하는 각 쿼리와 함께 많은 양의 텍스트를 전송할 수 있습니다. 또는 단지 10을 예상했을 때 100k 행을 리턴 할 수도 있습니다. – GrandOpener

+0

좋은 점 @GrandOpener - 또는 필요한 모든 것이 행 ID 일 때 select (*)를 수행 할 수 있습니다. –

13

기간은 결과 세트를 읽는 데 필요한 시간 (데이터를 검색)

나는 마이크로 옵션에 대한 확실하지 오전 쿼리를 실행하고 인출하는 데 필요한 시간을 보여줍니다. 최적화에 관한 것이라면 "조숙 한 최적화가 모든 악의 근원"이라고 기억하십시오.

0

마이크로 초 정도면 기본 설정 메뉴에서 사용 가능하게 설정하고 이전 시간 및 가져 오기 시간에 대한 질문이 있습니다. , 지금은 그 기간이 쿼리의 실행 시간이며, 가져 오기 결과를 검색하고 원하는 곳으로 보낼 답변을 얻을 것 같다. 예를 들어, 지속 시간이 0.078 인 쿼리를 내 웹 사이트로 다시 보내려면 60 초가 걸립니다.

0

실행 시간은 시간이 시간을 가져 오는 쿼리를 준비하고 쿼리를 실행하고 보냈다입니다 당겨-에서 행하기

+0

현상금에 남긴 메시지를 읽으십시오. –