Continue recebendo “O MySQL foi embora” e “Erro ao enviar o pacote QUERY”

2

Explicação

Existe um único site wordpress em um XEN VPS com CentOS (2GB de RAM, 2 núcleos) com média de visitantes que anteriormente trabalhava em uma hospedagem compartilhada barata sem esse tipo de problema (transferida por outros motivos).

  • 132 tabelas no banco de dados
  • Tamanho total do banco de dados 40MB
  • A maior tabela é 22MB, 5000 linhas
  • Na maioria das vezes (96%) select consultas, a média é de 200k select consultas por hora.

Tráfego da rede MySQL:

----------------------------------
|    Traffic     |     per hour  |
----------------------------------
|   Received     |    64.6 MiB   |
|    Sent        |     1.5 GiB   |
|    Total       |     1.5 GiB   |
----------------------------------

free -m result:

             total       used       free     shared    buffers     cached
Mem:          1868       1636        232          4         32       1113
-/+ buffers/cache:        490       1378 
Swap:         1023         57        966

Problema

Keep getting two errors every 4-5 hours like this:

  1. Lots (20-40) of this error: Error while sending QUERY packet. PID=XXXX in ...wp-db.php on line 1942

  2. Some (3-5) of this error: mysqli_query(): MySQL server has gone away in ...

Isso acontece por alguns segundos ou, na maioria das vezes, cinco minutos, e depois nenhum erro por mais quatro ou cinco horas.

O que eu fiz

Como eu entendi isso está relacionado a max_allowed_packet , então eu tentei valores de 256M para 900M sem qualquer sucesso, também modifiquei algumas outras configurações, mas reverti depois.

O arquivo atual de my.cnf é o seguinte (estava vazio quando o problema começou a acontecer):

[mysqld]
max_allowed_packet=524288000
open_files_limit=15000
wait_timeout=70
connect_timeout=70

Qualquer sugestão ou ajuda é muito apreciada.

    
por T. Rex 11.12.2017 / 05:57

0 respostas