Xshell 命令访问MySQL数据库,密码连接 报错!

报错内容:Access denied for user 'root'@'localhost' (using password: YES)

  • 在MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES)拒绝访问,导致不能继续修改MySQL密码

本案例为阿里云云服务器实例操作,Linux系统,Centos7.6+ 64位,安装了最新版MySQL8,
之后需求修改数据库密码,连接数据库发现报错。
.
特此发文一篇记录详细,仅供留作学习参考。


一、报错截图示下:

在这里插入图片描述


二、分析:

报文:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES);

分析的地方有两处:

  1. Access denied; (拒绝访问)
  2. using password:YES/NO

三、解决方案:

  • 在配置文件内,添加如下代码,绕过密码验证:
    skip-grant-tables
    

具体操作如下,区分系统。

3.1. Windows系统:

  1. 到安装的MySQL的目录下,找my.ini文件;

  2. 在[mysqld]后添加skip-grant-tables(使用 set password for设置密码无效,且此后登录无需键入密码)

    skip-grant-tables
    

    在my.ini,[mysqld]下添加一行,使其登录时跳过权限检查

  3. 重启MySQL服务器。

3.2. Linux 系统

  1. 下载到本地,进行修改:
    在这里插入图片描述
  2. 打开NotePadd++,添加上文所述的代码,截图示下 · 说明:
    在这里插入图片描述

四、解决后 截图:

完成密码重新修改,XShell部分截图示下:
在这里插入图片描述


推荐阅读:

  1. [在MySQL登录时出现Access denied for user ‘root’@‘localhost’ (using password: YES) 拒绝访问,并可修改MySQL密码] (https://blog.csdn.net/zoucui/article/details/96996554)

以上就是关于“ Access denied for user ‘root’@‘localhost’ (using password: YES) ”的全部内容。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐