Deixe-me começar por dizer que consultei vários posts (ambos aqui e outros na internet e no artigo no mysql.com sobre como redefinir a senha do administrador) sobre como redefinir a senha do mysql, mas nada parece funcionar para mim. Ah, eu também sou relativamente novo em trabalhar na linha de comando.
Abaixo da "solução" que parece funcionar para todos, mas não para mim:
Last login: Mon Nov 3 12:02:21 on console
maurice@Maurices-MacBook-Pro:~$ sudo /usr/local/mysql/support-files/mysql.server stop
Password:
Shutting down MySQL
. SUCCESS!
maurice@Maurices-MacBook-Pro:~$ sudo mysqld_safe --skip-grant-tables
141103 12:25:35 mysqld_safe Logging to '/usr/local/mysql/data/Maurices-MacBook-Pro.local.err'.
141103 12:25:35 mysqld_safe A mysqld process already exists
maurice@Maurices-MacBook-Pro:~$
Eu não sei de onde esse outro processo está vindo e não tenho ideia de como fechar isso. Se eu continuar seguindo as instruções e abrir uma nova guia do console, recebo o seguinte:
Last login: Mon Nov 3 12:25:16 on ttys000
maurice@Maurices-MacBook-Pro:~$ mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
maurice@Maurices-MacBook-Pro:~$ sudo mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
maurice@Maurices-MacBook-Pro:~$
Não consigo entrar no mysql para atualizar a senha. Eu posso me comunicar com o MySQL através do comando mysql
, mas (é claro) não posso fazer nenhuma pergunta:
maurice@Maurices-MacBook-Pro:~$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.21 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
ERROR 1142 (42000): UPDATE command denied to user ''@'localhost' for table 'user'
mysql>
Passei a noite inteira ontem à procura de soluções, mas não consigo encontrar nada em lugar nenhum. Por favor, lembre-se de que sou relativamente novo para trabalhar na linha de comando, por isso, se eu ignorar algo realmente básico; desculpe!
Eu realmente espero que alguém conheça uma solução, porque eu estou sem opções
Editar (solução):
Paul Haldane me indicou na direção certa. Eu esqueci que eu adicionei um arquivo com.mysql.mysql.plist
que eu carreguei via launchctl na inicialização para iniciar automaticamente o MySQL na inicialização. Primeiro fazendo um sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysql.plist
parou o MySQL e me deixou entrar no modo de segurança.
Tão feliz agora:)