mysql tenta se conectar ao localhost na inicialização, [Nota] Acesso negado para o usuário 'root' @ 'localhost' (usando a senha: NO)

1

Quando eu inicio / reinicio o serviço mysql, sempre vejo essa linha no log:

2017-07-19T17:35:02.379166Z 5 [Note] Access denied for user 'root'@'localhost' (using password: NO)

O que isso está tentando fazer? E como posso definir o usuário / senha / host para esta operação? (deve ser 127.0.0.1 e não localhost porque tenho skip_name_resolve=1 )

Eu já tenho um arquivo .my.cnf na minha pasta pessoal, mas o mysql está rodando sob o usuário mysql, então devo criar um arquivo .my.cnf no mysql home? Isso seria seguro?

Estou usando um servidor Percona 5.7

    
por the_nuts 19.07.2017 / 19:45

1 resposta

0

Isso ocorre porque o mysqladmin não pode logar como root.

O culpado é esta unidade Systemd:

/lib/systemd/system/mysql.service

Que executa este comando para ver se o daemon foi iniciado corretamente:

ExecStartPost=/usr/share/mysql/mysql-systemd-start post

Que executa:

# mysqladmin ping         
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
# echo $?
0

O valor de retorno é 0 apesar da mensagem de erro, portanto, o daemon é marcado como iniciado.

O Debian tem um arquivo que contém um usuário para executar operações não assistidas, para usar este arquivo explicitamente o comando anterior deve ser executado desta maneira:

mysqladmin --defaults-file=/etc/mysql/debian.cnf ping

Após essa explicação, posso ignorar a linha no log de erros.

    
por 18.09.2017 / 10:54

Tags