MySQL fica inacessível e não gera logs de erro

Iniciado por Piucco, 27 de Março de 2015, 18:52

tópico anterior - próximo tópico

Piucco

Olá pessoal

O MySQL instalado no Ubuntu Server no meu VPS ficou inacessível 3 vezes nesse último mês, prejudicando o funcionamento de aplicações. Não faço a minima ideia do que aconteceu, simplesmente o PHP não consegue realizar conexão local.

Não consigo descobrir aonde está o problema, o MySQL não gerou nenhum log nos arquivos /var/log/mysql.err e mysql.log. Como posso obter maiores detalhes do mal funcionamento? São apenas esses 2 arquivos que guardam os logs?

Obrigado

zekkerj

Nesses momentos em que o MySQL ficou inacessível, o que você fez para que ele retornasse? E como vc identificou a inacessibilidade?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Piucco

No desespero, as 3x eu reiniciei o servidor. A inacessibilidade identifiquei através da conexão do Wordpress com o MySQL, dando o famoso erro "Erro ao estabelecer uma conexão com o banco de dados". Em outras aplicações o PHP gerou logs de que foi impossível conectar no MySQL localhost.

Acredito que excedeu o limite de conexões simultâneas e o MySQL caiu, pesquisando vi que quando excede ele costuma cair, e só reiniciando o serviço pra voltar.

Temporariamente eu aumentei o número de conexões simultâneas para 1000. O que mais poderia ser? Aumentar o numero de conexões simultâneas é a melhor saída em termos de segurança e performance?

zekkerj

Exceder o limite de conexões simultâneas só faria o MySQL recusar conexões, não faria ele cair.

Aumentar o número de conexões pode resolver o problema ou pode piorá-lo: se vc estiver sofrendo um DoS, vc só vai estar jogando mais gasolina na fogueira.
O ideal seria vc ter um log das conexões no banco de dados.

Aliás, talvez fosse melhor vc repensar sua topologia... pq vc tem aplicação e banco de dados em servidores diferentes?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Piucco

São no mesmo servidor...

Criar os logs de conexão via PHP ou pelo próprio MySQL? Não está gerando nenhum log no MySQL, precisa habilitar alguma config pra gerar os logs?

zekkerj

Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Piucco

Não tinha visto o diretório, achei que eram apenas nos arquivos mysql.err e mysql.log.

Tentei entrar no diretório e me da acesso negado: -bash: cd: /var/log/mysql/: Permission denied

zekkerj

faça isso como root.

sudo -s
cd /var/log/mysql
ls
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D