“Não é possível conectar-se ao servidor MySQL local por meio de” erro de soquete [duplicado]

5

Eu instalei o mysql e tente iniciar

/usr/local/mysql/bin# ./mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
/usr/local/mysql/bin#

Alguma ideia?

    
por Miki 08.04.2011 / 13:14

4 respostas

7

O mysql pode ser iniciado a partir do upstart. Basicamente você instala o pacote mysql-server. Você pode facilmente procurar o pacote mysql-server no synaptic e instalá-lo. Você será solicitado a fornecer a senha root durante a instalação [por exemplo, senha root do usuário mysql]. Depois disso no terminal só fazer

sudo start mysql

ou

sudo service mysql start

O mysql geralmente é iniciado na inicialização, então você também pode executá-lo.

Apenas ps aux | grep mysql para ver se está sendo executado.

    
por sagarchalise 08.04.2011 / 13:40
6

Ubuntu 11.10: sudo dpkg-reconfigure mysql-server-5.1

Ubuntu 12.04: sudo dpkg-reconfigure mysql-server-5.5

Siga as instruções e reinicie.

Esse problema pode acontecer quando você atualiza de uma versão do ubuntu para outra e a configuração fica bagunçada de alguma forma. Geralmente o relacionado ao processo de inicialização do mysql daemon mysqld)

    
por Hanynowsky 14.03.2012 / 03:22
3

Eu vejo que você está usando / tmp / para o mysql.socket, então você não está instalando o mysql 5.1 que vem do Ubuntu, por padrão, ou você está instalando o mysql 5.5.x (que você precisa mencionar em sua pergunta se este é o caso). De qualquer forma, algumas das coisas que você pode fazer são:

  1. Verifique se o mysql ainda não está em execução: ps -e|grep -i 'mysqld' se aparecer e depois o mate. sudo killall -9 mysqld . Se não morrer pegue o pid do ps que você fez aqui e kill -9 PID

  2. "Tente" executar o mysql via /etc/init.d/mysql start se ele der exatamente o mesmo erro acima, então você precisa copiar o arquivo mysql.server do mysql que você baixou que pode pode ser encontrado na pasta support-files dentro da pasta mysql que você baixou ou na pasta /usr/local/mysql e copie para /etc/init.d/mysql (Exemplo: cp mysql.server /etc/init.d/mysql e dê a ele uma permissão executável chmod +x /etc/init.d/mysql , então execute-a novamente.

  3. Se ainda assim você tiver algum problema, edite o arquivo de configuração em /etc/my.cnf (se tiver o 5.5 instalado) ou /etc/mysql/mysql.conf (se tiver o 5.1 instalado) e altere TODAS as /tmp/mysql.socket linhas para /var/run/mysqld/mysqld.sock . Observe que o arquivo de configuração também pode estar em /etc/mysql/my.cnf .

    Teste isso, mas, por favor, adicione o mysql que você está usando, seja 5.1 ou 5.5. Eu menciono 5.5 aqui porque 5.5 é o que usa / tmp e 5.1 usa o padrão / var / run

Se por alguma mudança você estiver usando 5.5, então lembre de deletar os diretórios do antigo 5.1 de / etc / mysql, / var / lib / mysql e / user / lib / mysql

    
por Luis Alvarado 08.04.2011 / 17:08
2

Altere o nome do servidor de "localhost" para "127.0.0.1" em seus parâmetros de conexão, tenho certeza de que isso funcionará.

    
por quangtruong1985 08.09.2011 / 12:55

Tags