zoukankan      html  css  js  c++  java
  • 坑(二十六)—— mysql出现ERROR1698(28000):Access denied for user root@localhost错误解决方法

    mysql出现ERROR1698(28000):Access denied for user root@localhost错误解决方法

    复现

    我的操作系统是ubuntu18.04,以下是我的mysql版本:

    安装完成后,登录mysql的时候就出现了如下错误:

    因为安装的过程中没让设置密码,可能密码为空,但无论如何都进不去mysql。

    解决方案

    1、切换至root用户登录mysql

    # 因为安装过程中没有设置密码,所有可以root用户下回车登入mysql
    [root@pc ~]# mysql -uroot -p
    

    2、设置密码

    mysql> use mysql;   # 切换至mysql库
    mysql> update user set authentication_string=password("你的密码") where user="root";  # 修改密码
    mysql> flush privileges;  # 刷新,即可用刚设置的密码登录数据库
    

    3、问题解决

    如果经过步骤2以后,还是报错,无法进入mysql。还是以root身份登录mysql,查看数据

    mysql> use mysql
    mysql> select user, plugin from user;
    

    如果结果显示与下图相同,root对应auth_socket,那么需要修改成mysql_native_password

    mysql> update user set authentication_string=password("你的密码"),plugin='mysql_native_password' where user='root';
    

    修改完,结果应如下图所示,此时即解决

    参考博客: https://www.cnblogs.com/cpl9412290130/p/9583868.html

    博客内容仅供参考,部分参考他人优秀博文,仅供学习使用
  • 相关阅读:
    面向对象第三单元博客作业
    面向对象编程第2次总结(电梯作业)
    面向对象编程第1次总结
    OOP 第四章博客总结
    OO 第三章总结
    OOP 第二章作业总结
    Java 设计模式 -- 代理模式
    ASID 与 MIPS 中 TLB 相关
    Java 锁机制总结
    OOP 第一章作业总结
  • 原文地址:https://www.cnblogs.com/linagcheng/p/15496739.html
Copyright © 2011-2022 走看看