MariaDB ignora a senha root completamente

3

Acabei de instalar o MariaDB (mysqld) em um novo Ubuntu baixado ontem. Então eu corri o script

/usr/bin/mysql_secure_installation

e defina nova senha de root e login sem senha. No entanto, isso não funcionou, então eu tentei formar a linha de comando:

root@www:~# mysqladmin password whatever
root@www:~# mysql -uroot 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 35
Server version: 10.0.24-MariaDB-7 Ubuntu 16.04

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

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

MariaDB [(none)]> \q
Bye
root@www:~# 
root@www:~# mysql -uroot -plkasjfdklajsfd
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 38
Server version: 10.0.24-MariaDB-7 Ubuntu 16.04

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

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

MariaDB [(none)]> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [mysql]> select Host , User, Password from user;
+-----------+------+-------------------------------------------+
| Host      | User | Password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *90837F291B744BBE86DF95A37D2B2524185DBBF5 |
+-----------+------+-------------------------------------------+
1 row in set (0.00 sec)

Por que o mysql ignora minhas instruções de alteração de senhas e, pior, permite login sem senha como root?

    
por Nulik 19.05.2016 / 17:36

1 resposta

1

Algumas distribuições baseadas no Debian começaram a usar o plugin de autenticação de soquete do UNIX para o usuário root. Isso significa que a conta do sistema operacional está vinculada à conta raiz do banco de dados e você só pode acessar o banco de dados se tiver privilégios de superusuário. Pelo que sei, isso é feito para tornar a instalação inicial mais segura.

Para verificar se é realmente o plug-in de autenticação de soquete do UNIX que está causando isso, você pode efetuar login como outro usuário e tentar se conectar ao banco de dados com mysql -uroot . Se falhar, você acabou de confirmar que o banco de dados usa o plugin de autenticação de soquete do UNIX.

Por padrão, o cliente mysql usará um soquete de domínio UNIX local para se conectar a um servidor. Para usar uma conexão de rede, forneça o endereço de loopback como o nome do host com -h 127.0.0.1 . Isso deve permitir que você se conecte como usuário root com uma senha explícita.

    
por 15.02.2018 / 08:26

Tags