Mysqld.sock não existe

13

Eu tenho um servidor MySQL em execução no Amazon EC2 em uma instância de VPC. Eu tive que mudar o tipo de instância para lidar com a carga e, quando a trouxe de volta, o soquete não existia mais. O arquivo /var/run/mysqld/mysqld.sock não existe e nem o diretório.

Não faço ideia para onde foi, mas acabou de sair. Então, existe uma maneira de consertar isso? Se sim, como? O servidor está executando o Ubuntu 10.04.

Dave Long
fonte

Respostas:

14

Confirme se o mysqld.sock não existe

sudo find / -type s | grep mysqld.sock

Verifique se o seu /etc/mysql/my.cnfarquivo concorda que o arquivo deve ser / var / run / mysqld

socket  = /var/run/mysqld/mysqld.sock

e se isso acontecer, então

sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/
sudo service mysql restart

mas suspeito que seu problema esteja em outro lugar, pois o script de inicialização do mysql criará o diretório se ele não existir. Existe alguma mensagem relevante nos seus logs do mysql?

é a maneira inglesa
fonte
Bem, isso parecia consertar tudo. Eu acho que o problema era que eu estava usando mysqld e /etc/init.d/mysql start para iniciar o servidor, mas nunca tentei o método de serviço. Esse foi o único que criaria o diretório e o soquete.
Dave Longo
1
estranhamente, eu entendo isso toda vez que entro no meu servidor. e sempre que devo aplicar esta solução para corrigi-lo. seria ótimo se houvesse alguma correção permanente.
Hermann Ingjaldsson 30/07/2015
Eu recebi um erro como "erro: opção encontrada sem o grupo anterior no arquivo de configuração: /etc/mysql/my.cnf na linha: 24 Erro fatal no tratamento de padrões. Programa abortado"
Blairg23
Obrigado ..i tenho o mesmo problema, editei o arquivo /etc/mysql/my.cnf e adicionei o soquete = /var/run/mysqld/mysqld.sock, servidor mysql funcionando após a reestruturação.
Bhagvat Lande 28/03