Erro de logrotate do MySQL

2

Sou novo no Linux e configurei um VPS rodando o Ubuntu 16.04 com postfix, dovecot e rouncube usando o mariadb para o banco de dados. Tudo parece estar funcionando bem, mas recebo regularmente o seguinte email:

/etc/cron.daily/logrotate:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
error: error running shared postrotate script for '/var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log /var/log/mysql/mariadb-slow.log /var/log/mysql/error.log '
run-parts: /etc/cron.daily/logrotate exited with return code 1

Eu fiz algumas pesquisas e encontrei um post sugerindo que eu precisava criar um arquivo /root/.my.cnf que fiz e desde que reiniciei o servidor, etc. mas ainda estou recebendo o erro. O conteúdo do meu /root/.my.cnf é o seguinte:

[mysqladmin]
password = *mypassword*
user = root

[mysql]
password = *mypassword*

Alguém sabe se algo está faltando ou algo mais que preciso configurar para usar a senha do mysql, talvez?

Obrigado

    
por Adam D 26.01.2017 / 17:38

1 resposta

4

Isso pode ser um bug na configuração 'stock' ao usar o mariadb em oposição ao mysql que ainda não foi eliminado, pois eu me lembro vagamente de ter encontrado algo parecido quando movi para o mariadb do mysql.

Você vai querer olhar em /etc/logrotate.d/mysql-server para ver o que está sendo executado em postrotate. Você provavelmente terá algo assim:

test -x /usr/bin/mysqladmin || exit 0
if [ -f 'my_print_defaults --mysqld | grep -oP "pid-file=\K[^$]+"' ]; then
    # If this fails, check debian.conf!
    mysqladmin --defaults-file=/etc/mysql/debian.cnf flush-logs
fi

O Ubuntu provavelmente está procurando por lá, então tente dar uma olhada em /etc/mysql/debian.cnf e ver o que está definido.

    
por AvatarKava 26.01.2017 / 17:54