✅ 操作成功!

Ubuntu MySQL解决ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘的问题

发布时间:2023-06-17 作者:admin 来源:文学

Ubuntu MySQL解决ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘的问题

Ubuntu MySQL解决ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘的问题

问题:登录root用户显示权限错误,

Ubuntu@ubuntu:~$ MySQL -u root -p Enter password: ERROR 1698 (28000): Access denied for user 'root'@'localhost'

原因:是因为auth_socket的验证类型引起的。

解决: 1、通过sudo进入mysql,ubuntu默认sudo不需要密码就可以进

ubuntu@ubuntu:~$ sudo mysql

2、进入mysql库

mysql> use mysql;

3、改密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

然后就可以了。

当然这个是只允许本地访问的,如何想要远程访问root,则:

mysql> UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1; mysql> flush privileges; mysql> exit;

进入/etc/mysql/mysql.conf.d/mysqldf文件把bind-address = 127.0.0.1注释,即在bind-address = 127.0.0.1前面加#

ubuntu@ubuntu:~/Desktop$ sudo vi /etc/mysql/mysql.conf.d/mysqldf

在bind-address = 127.0.0.1前面加# 重启

ubuntu@ubuntu:~/Desktop$ service mysql restart
👁️ 阅读量:0