Mysql consultas altas por segundo, com alto uso de cpu

2

Eu tenho um servidor dedicado com 4GB de memória RAM e uma CPU Xeon de núcleo quádruplo, que atende a um site com 350 mil pageviews por dia usando o script wordpress. O problema é que o mysql está comendo muito CPU, e na investigação eu descobri que ele estava lidando com 250 consultas por segundo. Isso equivale a 60 consultas por carregamento de página, o que não pode estar correto. Além disso, a maioria das páginas é armazenada em cache usando o W3 Total Cache. Eu tenho vários aplicativos acessando o banco de dados, mas como eu sei qual deles está causando o alto uso de consultas?

    
por ddlshack 07.12.2010 / 20:41

4 respostas

1

O MySQL tem uma instrução chamada "show processlist" para mostrar as consultas em execução no seu servidor MySQL.

    
por 07.12.2010 / 21:09
0

Para problemas com o mysql, configure a consulta lenta e faça o perfil usando mysqltuner.pl e primer de ajuste do mysql . Isso corrige a maioria dos problemas do mysql. Analise as lentas e verifique se você pode adicionar mais índices.

Não esqueça de usar innodb como variável de tamanho do mecanismo e especialmente do tamanho do buffer de innodb.

    
por 07.12.2010 / 21:24
0

Por que não usar algo como WP Super Cache que reduzirá significativamente a quantidade de consultas em andamento? ao seu servidor de banco de dados?

    
por 07.12.2010 / 22:14
0

Ative o log de consultas lentas e defina a variável long_query_time. Isso registrará todas as consultas que levam mais tempo que o tempo especificado.

Em seguida, use a ferramenta mysqldumpslow para analisar o log de consultas lentas.

Para mais informações, consulte a documentação do mysql.

link

    
por 08.12.2010 / 16:36