Senha do MariaDB no Debian 9 Stretch

Senha do MariaDB no Debian 9 Stretch

Senha do MariaDB no Debian Stretch

A nova versão estável do Debian, codinome Stretch, vem com o MariaDB como única variante do MySQL. A partir de junho de 2017, quando você instala o pacote mysql-server, na verdade vai ser instalado o MariaDB 10.1.23. Nenhum problema até aí. Mais ou menos.

Na instalação padrão, não é mais possível acessar o terminal do MySQL (ou MariaDB) com o comando mysql -u root -p. A alternativa é executar como root, com o comando sudo mysql. Assim, você consegue ver o monitor do MariaDB:


Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 42
Server version: 10.1.23-MariaDB-9+deb9u1 Debian 9.0

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> 

Depois, para alterar a senha do root, use o comando:


SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MINHA SENHA');

Se não der certo por algum motivo, e deveria ter dado certo, você pode alterar direto a senha na tabela:


UPDATE mysql.user SET authentication_string = PASSWORD('MINHA SENHA') WHERE User = 'root' AND Host = 'localhost';

Por fim, o MariaDB usa um plugin com um nível a mais de segurança (e segurança nunca é demais) que vamos desabilitar para permitir que as aplicações cliente possam acessar as bases. Veja o plugin que está configurado:


select plugin from mysql.user;
+-------------+
| plugin      |
+-------------+
| unix_socket |
+-------------+

Agora, vamos desabilitá-lo:


UPDATE mysql.user SET plugin = '' WHERE User = 'root' AND Host = 'localhost';

Para finalizar, faça o flush dos privilégios:


flush privileges;

Agora deve ser possível conectar novamente sem precisar do sudo com o comando tradicional mysql -u root -p.

Leave a Reply

Your email address will not be published. Required fields are marked *