Estou tentando correr mysqlcheck
. Sua falha com:
$ sudo su -
# mysqlcheck --auto-repair --all-databases
mysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect
Outras perguntas e respostas dizem para modificar ou redefinir as senhas do MySQL. Eu realmente não quero fazer isso porque não sei o impacto. Se houver scripts usando, eu vou quebrá-los. No mínimo, eu tenho que compartilhá-lo com outros dois administradores de sistemas [meio período], então é principalmente uma dor.
O que eu gostaria é que o MySQL reconheça o usuário root da máquina (uid 0) e atribua a ele todos os privilégios concedidos ao root.
Estou trabalhando no CentOS 7.2. Como eu tenho o MySQL intitulado o usuário root?
Aqui estão algumas perguntas relacionadas. Todos eles levam de volta a modificar a senha.
fonte
mysql.conf
). Vou ter que voltar para você e aceitar.Com base no que você disse, vou supor que seu usuário do MySQL
'root'@'localhost'
tem uma senha desde que você mencionou o compartilhamento com outras pessoas. E por causa disso eu também estou supondo que você ainda conhece essa senha.Agora vamos dar uma olhada no que a mensagem de erro diz:
Então, o que estou vendo aqui é que você está tentando se conectar ao MySQL sem fornecer uma senha enquanto o usuário mysql tem uma senha. Obviamente isso não funciona.
eu aposto
mysqlcheck --auto-repair --all-databases -p
vai funcionar. Ele pedirá a senha e você deve estar pronto para ir.Tendo dito tudo o que eu aconselho fortemente contra o uso da conta de root do MySQL para outras coisas além de administrar o servidor MySQl (desde que você mencionou
If there are any scripts using it
), basta fazer outro usuário MySQL para esse script com as permissões apropriadas. E se você realmente precisar redefinir sua senha de root, dizer a outros dois colegas não deveria ser um problema assim, certo? Se é que eu iria avaliar seus métodos de comunicação de empresas ....fonte
mysqlcheck --auto-repair --all-databases -p
" - que solicita uma senha, mesmo quando executado como o usuário root comsudo su -
.sudo su -
. A elevação foi autenticada e o novo contexto de segurança está disponível. O que eu gostaria é que o MySQL honre ou use isso.