No Ubuntu 15.10, em um ponto (talvez após a instalação e remoção do mariadb), o mysql não conseguiu operar. As tarefas estão ativadas, mas o servidor está inoperante.
Ao comando:
mysql -u root -p
o sistema responde como:
mysql "ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded"
Não há como fazer login, nenhum plug-in encontrado, nenhum erro nos arquivos de configuração (tudo por padrão).
Como voltar ao controle e executar o servidor mysql?
Respostas:
O "unix_socket" foi chamado pelo processo de autenticação do mysql (talvez relacionado a uma migração parcial do banco de dados para o mariadb, agora removida). Para recuperar todas as coisas, vá su:
então siga:
Isto irá parar completamente o mysql, ignorar a autenticação do usuário (nenhuma senha necessária) e conectar-se ao mysql com o usuário "root".
Agora, no console do mysql, vá usando o banco de dados administrativo do mysql:
Para redefinir a senha root para mynewpassword (altere- a conforme desejado ), apenas para ter certeza:
E este substituirá o método de autenticação, removerá a solicitação unix_socket (e tudo mais), restaurando um método de senha normal e funcional:
Saia do console do mysql:
Pare e inicie tudo relacionado ao mysql:
Não se esqueça
exit
do modo su.Agora, o servidor mySQL está em funcionamento. Você pode fazer o login com root:
ou o que você desejar. O uso da senha está operacional.
É isso aí.
fonte
mysqld_safe
não tem opção como--skip-grant-tables
..o que dá?mysqld --verbose --help
mysqld_safe
quais reclamou o argumento - skip-grant-tables não existia, useimysqld
. No entanto, continuava reclamando que não era possível criar os arquivos de soquete/var/run/mysqld/
. Eu verifiquei a configuração do apparmor e ela tinha as permissões adequadas. Para corrigir isso eu tinha quemkdir /var/run/mysqld/
e, em seguida, dar permissões completamente abertos:chmod -R 777 /var/run/mysqld/
. Finalmente, eu poderia finalmente iniciar o daemon e alterar o plugin para 'mysql_native_password'.Aqui estão os meus passos para fazer isso:
fonte