Como alterar a senha de root do MySQL no Ubuntu 18 2


Ao instalar o servidor de banco de dados MySQL no Ubuntu 18 o mesmo não solicita uma senha para o usuário de banco root e não funciona tentar se conectar utilizando a senha padrão em branco. Como resolver isso?

Parece que a partir da versão 5.7 do MySQL o mesmo passou a utilizar um esquema de autenticação chamado auth_socket.

Para voltar com o esquema antigo de autenticação (mysql_native_password) e definir uma senha para o usuário root faça o seguinte:

Faça login com o usuário mysql

sudo mysql

Para verificar que o mesmo está utilizando a autenticação auth_socket execute a query:

SELECT user, authentication_string, plugin, host FROM mysql.user;

Será exibido algo do tipo

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *E6582BC648BA7DCGFD5FAFE0CA3FE15897296652 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+

Para definir uma nova senha para o usuário de banco root do MySQL execute o comando SQL:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'senha_nova';

Saia da sessão com exit ou \q

Pronto! Basta testar a nova senha

mysql -u root -p
Related Posts Plugin for WordPress, Blogger...