2 개의 다른 데이터베이스 (내 로컬 컴퓨터와 생산 시스템)에서 동일한 MySQL SQL 문을 실행했습니다. 로컬 컴퓨터의 속도가 빨라지는 반면 프로덕션 속도는 느립니다. 다음은 각각에 대한 EXPLAIN 결과입니다.mysql이 동일한 쿼리에 대해 2 개의 다른 서버에서 2 개의 다른 결과를 표시하는 이유
로컬 컴퓨터
생산 기계
I가없는 경우 차라리 정확한 쿼리를 게시 할 것입니다.
2 사이의 유일한 차이점은 프로덕션 서버가 5.5를 실행하는 동안 내 로컬 컴퓨터가 버전 5.6을 실행하고 있다는 것입니다. 또한 내 서버의 데이터는 3 일이 경과되어 많은 레코드가 아닙니다. 특히, 한 행의 유형이 "ref"를 읽고 다른 하나가 "ALL"을 읽고 28k 행의 차이가 읽히는 설명의 행 2를보고 있습니다. 2 개 구조 사이의 유일한 차이점은 내가 먼저 주석으로이 있었습니까
은 정말 답을주고 여기에 충분한 정보가 확실하지 않다 - 가능한 답을 넘어 당신은 이미 귀하의 질문에 포함되어 있습니다. – Nathan
웹에서 한번도 만난 적이없는 사람들이 두 서버에서 데이터가 동일하다고 생각하는 이유는 무엇입니까? 분명히,'explain'은 행의 수에 대한 견적/계산이 다르므로 설명은 데이터가 다르다는 것입니다. –
당신의 데이터베이스가 다른 테이블 구조를 가지고 있거나 서로 다른 데이터를 가지고 있거나 데이터의 크기가 실행 계획에 영향을 미칠 수 있다고 생각합니다. –