Você pode redefinir a senha do root executando o servidor com
--skip-grant-tables
e fazendo login sem uma senha executando o seguinte como root (ou com sudo):# service mysql stop
# mysqld_safe --skip-grant-tables &
$ mysql -u root
mysql> use mysql;
mysql> update user set authentication_string=PASSWORD("YOUR-NEW-ROOT-PASSWORD") where User='root';
mysql> flush privileges;
mysql> quit
# service mysql stop
# service mysql start
$ mysql -u root -p
Agora você deve ser capaz de fazer login como root com sua nova senha.
Também é possível encontrar a consulta que redefine a senha em
/home/$USER/.mysql_history
ou /root/.mysql_history
do usuário que redefiniu a senha, mas o acima sempre funcionará. Nota:antes do MySQL 5.7, a coluna era chamada de
password
em vez de authentication_string
. Substitua a linha acima por mysql> update user set password=PASSWORD("YOUR-NEW-ROOT-PASSWORD") where User='root';