Habilitar acesso sem senha ao MySQL

14

Como posso excluir minha senha para o MySQL? Eu não quero ter uma senha para se conectar ao banco de dados. Meu servidor está executando o Ubuntu.

    
por Yosef 20.05.2010 / 00:27

5 respostas

28

Pessoalmente, acho que é melhor definir uma senha e salvá-la em /root/.my.cnf:

Primeiro:

mysqladmin -u root password 'asdfghjkl'

Em seguida, edite o arquivo .my.cnf do root:

[client]
password = asdfghjkl

Agora você tem uma senha, mas não é mais solicitado. Minha instalação padrão do servidor MySQL é uma senha única totalmente aleatória para cada servidor MySQL, salva no arquivo .my.cnf como este.

    
por 20.05.2010 / 01:17
9

Se você tiver uma senha definida para o MySQL, siga as instruções em Recuperar a senha de root do MySQL e defina sua senha como null:

Para 5.7.6 e posterior

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass'

Para 5.7.5 e anteriores

update user set password=PASSWORD("") where User='root';

* precisa de uma reinicialização do DB (veja as instruções no link) para que isso tenha efeito.

sudo service mysql restart
    
por 20.05.2010 / 00:41
5

Você também pode fazer:

grant all privileges on *.* to 'root'@'localhost' identified by '';
    
por 10.07.2012 / 22:19
5

Sim, menos senhas podem ser boas. Mas não basta abrir o banco de dados para todos.

via unix_socket:

grant usage on *.* to 'root'@'localhost' identified via unix_socket;

Isso lhe dá acesso ao mysql sem senha para um usuário root logado localmente. Btw. este é o padrão nas versões recentes do ubuntu / debian.

some_user@box: mysql -u root  # denied
root@box: mysql               # good
some_user@box: sudo mysql     # good, if "some_user" has sudo rights.

Slides explicativos: link .

    
por 27.06.2018 / 11:01
1

Tenho certeza de que, por padrão, não há senha se você for o usuário administrador e acessá-lo localmente. Você está encontrando algo diferente?

Isso funciona?

#> mysqladmin -u root password ''
    
por 20.05.2010 / 00:31

Tags