我在Ubuntu LTS 16.04上安装了MariaDB。然后我跑了
/usr/bin/mysql_secure_installation
并设置root密码。通过mysql -u root -p
访问数据库工作正常。但是使用service mysql status
检查状态会打开一个带有此警告的日志文件:
[Warning] 'user' entry 'root@localhost' has both a password and an authentication plugin specified. The password will be ignored.
问题是:
答案 0 :(得分:19)
这是正常的,如果通过说“通过mysql -u root -p
访问数据库工作正常”你的意思是你在作为系统根目录时运行它(或在sudo
下)。你不应该像普通用户那样做。
默认情况下,Ubuntu生成的包对本地root具有unix_socket身份验证。要检查,请运行
SELECT user, host, plugin FROM mysql.user;
您应该在unix_socket
的{{1}}列中看到plugin
。
如果您想使用密码验证,请运行
root@localhost