复制代码
$ sudo mysql -u root 

mysql> USE mysql;
mysql> SELECT User, Host, plugin FROM mysql.user;

+------------------+-----------------------+
| User             | plugin                |
+------------------+-----------------------+
| root             | auth_socket           |
| mysql.sys        | mysql_native_password |
| debian-sys-maint | mysql_native_password |
+------------------+-----------------------+
复制代码

正如您在查询中看到的,根用户正在使用auth_socket插件

有两种方法可以解决这个问题:

1,可以将根用户设置为使用mysql_native_password插件
2,您可以用您的系统用户创建一个新的数据库用户(推荐)

方法一:

复制代码
$ sudo mysql -u root #使用sudo 进入mysql,执行下面语句。

mysql> USE mysql;
mysql> UPDATE user SET plugin=\'mysql_native_password\' WHERE User=\'root\';
mysql> FLUSH PRIVILEGES;
mysql> exit;

$ service mysql restart
复制代码

方法二:(用你自己的用户名替换系统用户)

复制代码
$ sudo mysql -u root 

mysql> USE mysql;
mysql> CREATE USER \'YOUR_SYSTEM_USER\'@\'localhost\' IDENTIFIED BY \'\';
mysql> GRANT ALL PRIVILEGES ON *.* TO \'YOUR_SYSTEM_USER\'@\'localhost\';
mysql> UPDATE user SET plugin=\'auth_socket\' WHERE User=\'YOUR_SYSTEM_USER\';
mysql> FLUSH PRIVILEGES;
mysql> exit;

$ service mysql restart
复制代码

 原创链接:https://www.cnblogs.com/sly27/p/10821745.html

版权声明:本文为hfclszs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/hfclszs/p/13761244.html