A senha de root do MySQL não está funcionando como esperado

1

Estou executando o MariaDB 10.0.24 no Ubuntu 16.04. Eu instalei através do repositório xenial apt-get install mariadb-server .

A senha do root não parece estar funcionando corretamente. Corri estes passos para definir a senha: link , mas recebo o seguinte comportamento:

Quando eu faço sudo mysql ou sudo mysql -u root ele me coloca no console sem pedir senha (por que posso entrar sem senha?)

Quando eu faço sudo mysql -u root -p ele me pede uma senha, mas vai me deixar entrar no console mysql, independentemente da string que eu digito. Por que me deixa entrar ao dar uma senha incorreta?

Quando faço mysql -u root , ele me pede senha, mas não aceita a senha que eu defini seguindo as instruções no artigo vinculado.

Algo, obviamente, não está certo. Alguém sabe por que não está pedindo senha da raiz e não está aceitando senhas do meu usuário?

    
por Guerrilla 02.05.2016 / 07:27

1 resposta

1

sudo mysql && sudo mysql -u root é um comando redundante. Não é um asss para senha porque você tem um arquivo chamado /root/.my.cnf com o nome do cliente e senha

sudo mysql -u root -p pedem passowrd porque você colocou -p em seu coammand (veja man mysql )

·   --password[=password], -p[password]

           The password to use when connecting to the server. If you use the short option form (-p), you cannot have a
           space between the option and the password. If you omit the password value following the --password or -p option
           on the command line, mysql prompts for one.

           Specifying a password on the command line should be considered insecure. See Section 6.1.2.1, “End-User
           Guidelines for Password Security”. You can use an option file to avoid giving the password on the command line.

Leia as diretrizes do usuário para a segurança por senha

Especialmente para a pergunta do usuário

Como o Ubuntu 16.04 usa o Xenial, isso é um pouco peculiar na forma como eles controlam certas coisas, e trabalhando com um plug que afeta como usamos muitos administradores de sistema.

mysql > use o mysql; mysql > update user set plugin = '' onde Usuário = 'root'; mysql > privilégios de flush;

    
por 02.05.2016 / 07:45