MySQL muito lento no VMware

1

Eu tenho o Windows 7, o VMware Worstation 7 e o Ubuntu Hardy 8.04 (tentei o cliente de 64 bits e 32). Eu obtive o phpmyadmin rodando no host sob o Apache. Eu mudei o config.inc.php para adicionar vários hosts para que eu possa acessar minha instância do MySQL em execução em um cliente VMware Ubuntu Hardy.

É terrivelmente lento. Leva 13 segundos para alternar de uma tabela para outra. Eu tentei instâncias diferentes do Ubuntu executando instâncias diferentes do MySQL. Eu aloquei 512 MB e também tentei 1 GB de memória. Top diz que o sistema não está fazendo nada.

O mesmo problema em todos. Eu tentei mudar de NAT para Host Network para Bridged Network. Todos eles funcionam, mas todos são igualmente lentos. Eu vi alguém dizendo que eles tinham problemas com nomes não correspondentes em /etc/hostname e /etc/hosts , então eu os verifiquei. Eu acesso o host com hostname:

taer12

Eu tenho isso no hostname e também em /etc/hosts .

top - 15:52:55 up 30 min,  2 users,  load average: 0.00, 0.00, 0.00
Tasks:  55 total,   1 running,  54 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    515432k total,   110748k used,   404684k free,     4980k buffers
Swap:   915664k total,        0k used,   915664k free,    64720k cached

Alguém tem alguma outra ideia?

    
por Rich 09.11.2010 / 05:55

2 respostas

4

Eu consertei, o Google corrigiu, é sempre o Google ou o Stackoverflow que corrige isso!

eu adicionei

skip-name-resolve

para my.cnf na seção [mysqld] e, graças a Deus, funcionou! Agora voa. Levou-me todo o dia para colocar este ambiente de desenvolvimento em funcionamento, espero que ajude alguém.

Felicidades

Rich

    
por 09.11.2010 / 07:02
0

Rich -

Desculpe - só vi isso, se ele ajuda você a ajustar isso um pouco melhor - por que não responder.

Eu começaria com algum monitoramento básico do MySQL - algumas ferramentas que podem ajudar aqui são:

top, mtop e innotop

(top é o padrão no linux) mtop - link innotop - link

Você também pode recorrer à ferramenta de monitoramento do MySQL na linha de comando (cli)

mysqladmin processlist / mysqladmin proc

Infelizmente - muitas pessoas usarão os modelos padrão disponibilizados em / usr / share / mysql

RECOMENDO ALTAMENTE TROPÁ-LOS - eles são antigos e não valem a pena usar pelas seguintes razões:

  • Configurações inválidas para algumas versões do sistema operacional ou do MySQL (por exemplo, thread_concurrency e skip-locking)
  • Adicionando variáveis de array enormes que você pode não entender quais são
  • O desempenho de testá-los em relação a outras configurações é mais do que questionável

Depois de executá-los - e fazer algum ajuste - deixe o mysql rodar por pelo menos 24-48 horas e depois use as seguintes ferramentas de diagnóstico:

  • Sintonizador MySQL (apenas digite wget mysqltuner.pl no linux para fazer o download, em seguida, chmod755 mysqltuner.pl e execute-o fazendo ./mysqltuner.pl ;-)
  • mysqlidxchk (Instale pelo wget hackmysql.com/scripts/mysqlidxchk-1.1 chmod 755 mysqlidxchk * mv mysqlidxchk * mysqlidxchk) então execute fazendo algo assim: (./mysqlidxchk --general / var / lib / mysql / general.log)

Se você precisar de ajuda para instalá-los, por favor, avise-nos

PS - a maioria destes são apenas scripts do Linux - mas ajudará muito com o ajuste e gerenciamento do seu servidor mySQL.

Bem como uma boa ferramenta de análise de log como mysqlsla e mysqlreport para relatórios de status

    
por 09.11.2010 / 18:13