Meu problema começou com a impossibilidade de efetuar login como root na minha instalação do mysql. Eu estava tentando executar o mysql sem senhas ativadas ... mas sempre que eu executava o comando
# mysqld_safe --skip-grant-tables &
Eu nunca receberia o aviso de volta. Eu estava tentando seguir estas instruções para recuperar a senha .
A tela fica assim:
root@jj-SFF-PC:/usr/bin# mysqld_safe --skip-grant-tables
120816 11:40:53 mysqld_safe Logging to syslog.
120816 11:40:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
e não recebo uma solicitação para começar a digitar os comandos SQL para redefinir a senha.
Quando eu mato pressionando CTRL+ C, recebo a seguinte mensagem:
error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
Se eu tentar novamente o comando e deixá-lo por tempo suficiente, recebo a seguinte série de mensagens:
root@jj-SFF-PC:/run/mysqld# 120816 13:15:02 mysqld_safe Logging to syslog.
120816 13:15:02 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
120816 13:16:42 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
[1]+ Done mysqld_safe --skip-grant-tables
root@jj-SFF-PC:/run/mysqld#
Mas se eu tentar fazer login como root, faça o seguinte:
# mysql -u root
Eu recebi a seguinte mensagem de erro:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Eu verifiquei e o /var/run/mysqld/mysqld.sock
arquivo não existe. A pasta faz, mas não o arquivo.
Além disso, eu não sei se isso ajuda ou não, mas eu corri find / -name mysqld
e veio com:
/var/run/mysqld - folder
/usr/sbin/mysqld - file
/run/mysqld - folder
Eu sou novo no Linux e MySQL, então não sei se isso é normal ou não. Mas estou incluindo essas informações para o caso de ajudar.
Finalmente decidi desinstalar e reinstalar o mysql.
apt-get remove mysql-server
apt-get remove mysql-client
apt-get remove mysql-common
apt-get remove phpmyadmin
Depois de reinstalar todos os pacotes novamente na mesma ordem que acima, durante a instalação do phpmyadmin, recebi o mesmo erro:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Então, tentei novamente desinstalar / reinstalar. Desta vez, depois de desinstalar os pacotes, também renomeei manualmente todos os arquivos e diretórios mysql mysql.bad
em seus respectivos locais.
/var/lib/mysql
/var/lib/mysql/mysql
/var/log/mysql
/usr/lib/perl5/DBD/mysql
/usr/lib/perl5/auto/DBD/mysql
/usr/lib/mysql
/usr/bin/mysql
/usr/share/mysql
/usr/share/dbconfig-common/internal/mysql
/etc/init.d/mysql
/etc/apparmor.d/abstractions/mysql
/etc/mysql
Então eu tentei reinstalar mysql-server
e mysql-client
novamente. Mas notei que não me solicita uma senha. Não deveria pedir uma senha de administrador?
/var/run/mysqld/mysqld.sock
faltando. O problema que você vinculou tem esse arquivo.