MariaDB警告:'root @ localhost'都有...密码将被忽略

Flo*_*anL 9 mysql passwords warnings root mariadb

我在Ubuntu LTS 16.04上安装了MariaDB.然后我跑了

/usr/bin/mysql_secure_installation
Run Code Online (Sandbox Code Playgroud)

并设置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.
Run Code Online (Sandbox Code Playgroud)

问题是:

  1. 这是担心还是完全正常?
  2. 如果这是一个担心,我该如何解决?

ele*_*nst 20

这是正常的,如果通过说"通过mysql -u root -p工作正常访问数据库",则意味着您在作为系统根(或下sudo)时运行它.你不应该像普通用户那样做.

默认情况下,Ubuntu生成的包对本地root 具有unix_socket身份验证.检查,运行

SELECT user, host, plugin FROM mysql.user;
Run Code Online (Sandbox Code Playgroud)

你应该unix_socketplugin专栏中看到root@localhost.

如果您想使用密码验证,请运行

UPDATE mysql.user SET plugin = '' WHERE plugin = 'unix_socket';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)