2014-03-03 3 views
-1

홈 페이지에 sql 쿼리가있어서 홈 페이지가 너무 오래 걸린다.wordpress에서 mysql 쿼리를 실행하는 데 너무 많은 시간이 걸린다.

"select 
t1.*,t2.ID,t2.post_title,t2.post_content,t5.name as itemCat,t4.taxonomy as itemType 
from 
$wpdb->postmeta as t1 
inner join $wpdb->posts as t2 on t2.ID=t1.post_id 
inner join $wpdb->term_relationships as t3 on t3.object_id=t2.ID 
inner join $wpdb->term_taxonomy as t4 on t4.term_taxonomy_id=t3.term_taxonomy_id 
inner join $wpdb->terms as t5 on t5.term_id=t4.term_id 
where t2.post_status='publish' AND t1.meta_key = '_ait-dir-item' and t1.meta_value 
LIKE '%".$url->cityName."%' group by t2.ID,itemType" 
+0

모든 색인이 사용 되나요 ?? – Neels

+0

어떻게 인덱스를 만들 수 있습니까? – User1988

+0

"% 기타"는 색인을 사용할 수 없습니다. 그러나 "무엇이든"할 수 있습니다. – Strawberry

답변

0

데이터베이스에서 DDL 작업을 실행할 수있는 권한이있는 경우 테이블에 인덱스를 만들어보십시오.

데이터베이스의 크기가 크고 데이터베이스의 다양한 레코드를 통해 쿼리를 검색하는 데 시간이 오래 걸리는 경우 효과적으로 검색하는 데 걸리는 시간이 단축되므로 인덱스를 유용하게 사용할 수 있습니다. INDEXES의 작동 방식을 이해하기위한

https://dev.mysql.com/doc/refman/5.5/en/create-index.html

무엇 당신은 아래 페이지를 통해 갈 수 인덱싱의 효율적인 방법입니다 :

인덱스를 생성 들어, 다음 자습서를 탐색 할 수 있습니다

https://dev.mysql.com/doc/refman/5.5/en/optimization-indexes.html

느린 RAM 및 서버에서 실행하는 메모리와 같은 다른 요인으로 인해 쿼리에 시간이 걸리는 경우 사전 변경해야 할 수도 있습니다 서버 시스템에서 실행중인 프로세스 수

여기에 방책이 무엇인지 알기를 바랍니다.

관련 문제