두 개의 파티션이있는 테이블이 있습니다. 파티션은 pactive = 1
및 pinactive = 0
입니다. 나는 두 개의 파티션이별로 이득이되지 않는다는 것을 이해하지만, 하나의 파티션에서 잘라내어로드하고 일반 파티션을 다른 파티션에 삽입하는 데 사용했습니다.MySQL의 파티션 테이블에 대한 인덱스
인덱스를 만들 때 문제가 발생합니다.
쿼리는이 방법을
select partitionflag,companyid,activityname
from customformattributes
where companyid=47
and activityname = 'Activity 1'
and partitionflag=0
만든 인덱스를 간다 -
create index idx_try on customformattributes(partitionflag,companyid,activityname,completiondate,attributename,isclosed)
위의 쿼리에서 입수해온됩니다 약 200000 기록이 있습니다. 그러나 앞서 언급 한 색인과 함께 검색어는 30 초 이상 걸립니다. 그런 긴 시간 동안의 이유는 무엇입니까? 또한, 위에서 언급 한 인덱스에서 partitionflag를 제거하면 인덱스가 사용되지 않습니다.
그리고
- 에도 파티션을 사용할 수와 함께, 옵티마이, 인덱스 정의에 언급 된 요구 파티션이 필요 있도록 단지 올바른 ---- 필요한 파티션 안타, 이해는 무엇입니까? 이해에
어떤 아이디어이
설명 출력이 없으면 추측하면됩니다. – Shadow
안녕, 계획 상세 정보를 검색 할 ID - 1 SELECT_TYPE - SIMPLE 테이블 - customformattributes 유형 - 심판 이 possible_keys - idx_try 키 - idx_try 있는 key_len - 213 심판 - const를, CONST, const를 행 - 247892 필터링 - 100.00 추가 - Using using; 인덱스 –
사용 특히 쿼리 실행 계획에 잘못된 것이 있다고 생각하지 않습니다. 당신은 큰 결과를 가지고 있습니다. 결과 집합을 줄이고 쿼리 성능을 그렇게 확인 했습니까? – Shadow