2011-11-11 3 views
3

나는 데브 컴퓨터에서 실행하는 데 600ms가 걸리는 쿼리를 가지고 있지만 재시작 기계 에서이 쿼리를 다시 실행하면 62s execute.but 걸릴 것입니다 생산성 기계에서 다시 700ms.So 걸릴 쿼리가 데이터 또는 IO 문제를 보내거나 problem.i를로드하는 데 걸리는 이상한 일이 MySQL과 UNIX를 사용하고 있습니다. Opensuse.i는이 문제를 포착하는 도구가 필요하거나 누군가를 포착하는 방법을 알고 있다면 필요합니다. 그와 함께 일하기 전에 .10xMySQL 데이터를 보내고 성능을

답변

2

캐싱은 처음으로 쿼리를 실행하는 데 62 초가 걸리고 두 번째 시간은 700ms가 실행되는 이유를 설명합니다.

쿼리가 실행되는 동안 mysql이 수행하는 작업을 보려면 FLUSH QUERY CACHE 또는 FLUSH TABLES를 실행하여 캐시를 지운 다음 쿼리를 실행하고 별도 세션에서 "process processlist"를 몇 번 실행하십시오 쿼리가 실행되는 동안 "상태"는 MySQL이하는 일을 보여줍니다.

"EXPLAIN"을 사용하여 쿼리를 분석 할 수도 있습니다. "mysql explain"에 대한 간단한 google 검색은 "EXPLAIN"이하는 일과 쿼리 나 인덱스를 최적화하는 데 사용하는 방법을 설명하는 여러 사이트로 귀결됩니다. 그 후에도 문제가 계속되는 경우 인덱스 정의, 쿼리 및 EXPLAIN 출력을 관련 테이블 정의에 게시하십시오.

dev와 production 사이의 성능 차이는 ... 두 환경에서 다른 점이 있습니까? 아마도 다른 MySQL 구성 또는 시스템 구성?

관련 문제