当前位置: 代码迷 >> 综合 >> ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘
  详细解决方案

ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘

热度:22   发布时间:2023-12-06 06:34:51.0

操作系统:Ubuntu18.04

安装mysql命令

sudo apt-get install mysql-server mysql-client

解决方案-1

sudo mysql -u root -p

直接回车,进去再设置密码

解决方法-2

sudo cat /etc/mysql/debian.cnf

可以看到password

解决方法-3

有一个方法是到/var/log/目录下找到一个mysqld.log的文件,可以查看初始密码,但是我没有找到

cat /var/log/mysqld.log

解决方法-4

用超级权限登录mysql,就可以不使用密码进去

sudo su

登录MySQL

mysql -u root -p mysql -u root -p 

进入mysql数据库,要开始使用;号

use mysql;

查看root的密码

select host,user,plugin,authentication_string from user;  

显示root用户的plugin为auth_socket,密码应该是空的

更改新密码

update user set plugin="mysql_native_password",authentication_string=password('新密码') where user="root";

更新权限

flush privileges;

之后就可以mysql -u root -p以新密码登录MySQL了。

  相关解决方案