如何将logrotate的“使用密码”设置更改为yes?

时间:2019-01-16 15:34:12

标签: mysql mariadb logrotate debian-stretch

我最近使用MariaDB设置了一个数据库,现在每天都从logrotate获取错误消息(请参见下文)。我正在为root数据库用户使用密码。根据我在网上找到的内容,我设置了my.cnf文件,但它没有做任何更改。错误消息状态(使用密码:否)。我在网上看到的一些帖子反而说“是”。但是,我无法在网上找到任何文档,也无法在MariaDB设置文件中找到可以告诉logrotate应该使用密码的文档。

错误消息:

/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

/root/.my.cnf

[mysqladmin]
password = "password"
user = root

[mysql]
password = "password"
user = root

我正在Debian Stretch上运行MariaDB 10.1.37

1 个答案:

答案 0 :(得分:0)

我建议您为mysqladmin提供单独的用户,并赋予它最小的权限。这可以减少黑客的漏洞。

mysqladmin类似于mysql,它使用参数来确定什么用户,什么主机以及是否要求输入密码:

  • -p-动态询问密码(很难在批处理脚本中使用)
  • -pMyPwd-提供密码(不是很安全)
  • (以上都不是)-没有密码,或者...

您可以使用mysql_config_editor来以特殊方式设置密码,而不必包括-p