Ubuntu 16.04 上的 mysql_secure_installation 未设置 root 密码

Ubuntu 16.04 上的 mysql_secure_installation 未设置 root 密码

我正在将一些 mysql(MariaDB)主机从 Ubuntu 14.04 升级到 16.04,并注意到mysql_secure_installation似乎没有在 DB 上设置 root 密码,即使它提示我输入该密码。

我从 mysql 提示符更改了 root 密码,但当天晚上,该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

我检查了/etc/logrotate.d/mysql-serverlogrotate 脚本并且它正在调用mysqladmin

...
# If this fails, check debian.conf!
mysqladmin --defaults-file=/etc/mysql/debian.cnf --local flush-error-log \
flush-engine-log flush-general-log flush-slow-log
...

由于注释说要检查 debian.conf,所以我检查了一下:

# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host     = localhost
user     = root
password = 
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host     = localhost
user     = root
password = 
socket   = /var/run/mysqld/mysqld.sock
basedir  = /usr

因此..debian.cnf默认情况下没有为 root 设置密码。在 14.04 中,此文件填充的是帐户debian-sys-maint,而不是 root。

我可以返回并在 mysql 中设置我的 root 密码,然后将该密码输入到其中,/etc/mysql/debian.cnf但是我现在真的想知道安装过程中是否出现了什么问题,导致帐户混乱debian-sys-main,或者这只是 Mysql 安装的“新”方式?

相关内容