Query causando carga por causa da contabilização de post SQL_CALC_FOUND_ROWS?

4

Eu encontrei essa consulta causando alguma carga no servidor, e minha provedora de hospedagem me pediu para consultá-la.

SELECT SQL_CALC_FOUND_ROWS  wp_posts 

Acho que isso não selecione não. linhas encontradas na tabela wp_posts .. mas eu tentei esta consulta em página separada, demora tanto tempo para completar o pedido.Pode alguém me ajudar a superar a partir deste problema?

Obrigado!

    
por VKGS 23.01.2012 / 12:39

1 resposta

3

O WordPress usa esse recurso do MySQL para obter uma contagem total de postagens quando você está recuperando apenas uma quantidade limitada (100 posts no total, mas apenas 10 postagens por página).

A partir de uma rápida olhada na fonte, há no_found_rows query argumento que pode desativá-lo. Isso destruirá a paginação e só deve ser usado com consultas específicas que não precisam ser contadas (por exemplo, get_posts() usa por padrão).

Você provavelmente precisará analisar o desempenho do seu banco de dados como um todo (se estiver executando algo muito grande) ou se houver problemas com a configuração (se estiver executando algo pequeno o suficiente para não causar problemas com recursos).

    
por Rarst 23.01.2012 / 13:08