É assim que você pode fazer isso no macOS Sierra, provavelmente você o instala via pacote e nas preferências do sistema tem um ícone para MySQL, algo assim:
Se estiver funcionando, abra um terminal e execute este comando:
pgrep -fl mysql
Isso o ajudará a encontrar o caminho do
mysqld
e o comando atual usado para iniciar o servidor, a saída pode ser algo assim:6283 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid
O próximo passo é parar o MySQL, você pode fazer isso clicando no menu System Preferences e clicando no botão
Stop MySQL Server
botão, uma vez parado dentro de um terminal você precisará reiniciar o servidor, mas com algumas opções extras, algo assim:sudo /usr/local/mysql/bin/mysqld \
--skip-grant-tables \
--skip-networking \
--user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid
Na verdade, é o mesmo comando da saída de
pgrep -fl mysql
mas neste caso, você só precisa adicionar:--skip-grant-tables --skip-networking
Depois de fazer isso, você notará que o menu das Preferências do Sistema está verde novamente e o MySQL deve estar funcionando, agora você pode tentar fazer o login e alterar a senha:
mysql -uroot
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR [email protected]'localhost' = PASSWORD('secret');
mysql> FLUSH PRIVILEGES;
mysql> exit
Pare e reinicie o MySQL no painel de Preferências do Sistema e ele deve estar funcionando agora com a nova senha.