ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘ *
Linux无法正常登陆mysq解决方法*
原因:Ubuntu下载mysql时没有显示设置用户密码,导致使用命令 mqsql -u root -p时无法识别
本人解决方法:
步骤1:执行以下代码,找到下载mysql时系统自动创建的用户及账号密码(因执行cat /etc/mysql/debian.cnf查看文件时显示权限不足,因此在前面加sudo)
sudo cat /etc/mysql/debian.cnf
结果如下图所示:
图中显示user(用户名):deian -sys-maint,及password:
步骤2:使用上图显示的用户名密码登陆:
mysql -u deian-sys-maint -p
并输入密码,一般可登陆成功,本人第一次登陆失败,依旧显示ERROR 1698 (28000): Access denied for user ‘deian -sys-maint‘@‘localhost,稍等一会重试就成功了,如下图所示:
步骤3:查看user表,在mysql命令行下,输入以下代码:
select user, plugin from mysql.user;
步骤4:修改用户密码(这里设置为123456,可自行修改),输入以下命令,并刷新
update mysql.user set authentication_string=PASSWORD('123456'), plugin='mysql_native_password' where user='root';
flush privileges;#刷新
最后:退出mysql,重启即可登陆:
\q #退出
mysql -u root -p
再输入密码即可登陆成功
参考文章链接:https://blog.csdn.net/longmenshenhua/article/details/88836576