zoukankan      html  css  js  c++  java
  • Access denied for user 'root'@'localhost' (using password: YES) 解决方法

    Access denied for user 'root'@'localhost' (using password: YES)

    使用SpringBoot 写demo 时MySQL一直连接不上,详细错误信息如下

    create connection SQLException, url: jdbc:mysql://localhost:3306/mybatisplus?useSSL=false&useUnicode=true&characterEncoding=utf-8, errorCode 1045, state 28000
    

    配置文件信息如下

    application.yml

    spring:
      datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://localhost:3306/mybatisplus?useSSL=false&useUnicode=true&characterEncoding=utf-8
        username: root
        password: 000206
    

    数据库结构

    去网上查找解决方案,都说密码错误或数据库名称不匹配,但是我反复检查后确认密码和数据库名称匹配的情况依然连接不上数据库,如下图所示,可以使用配置文件内的密码正常登录MySQL

    还有人说去掉useUnicode=true 或者设置时区(MySQL8及以上必须设置时区,高版本兼容低版本,即MySQL8以下版本也可以设置时区),但是修改配置后依然无济于事,修改后的url如下所示

    jdbc:mysql://localhost:3306/mybatisplus?useSSL=false&characterEncoding=utf-8&serverTimezone=GMT%2B8
    

    还有说把localhost 改为 127.0.0.1 的,我都试了还是连接不上

    后来在讨论群里咨询,有人说在密码上加个单引号,我试了试,你猜怎么着,嘿,它还就真的连上了 (°ー°〃)

    但是为什么要这么做我并不清楚,希望有大佬看到后能给身为小白的我补充一下知识盲区 ヾ(•ω•`)o

    我个人认为可能是密码是纯数字的原因,所以改了个非纯数字的密码测试一下

    application.yml 中的密码也改一下,而且不使用单引号将其包裹


    结果正如我所料,运行一路畅通,非常 Nice (~ ̄▽ ̄)~

    最后,希望能给你带来收获,还有,请知道其中原理的大佬 一定 要不吝赐教,为我指点迷津,感谢了 (๑•̀ㅂ•́)و✧

  • 相关阅读:
    【sybase】You can’t run SELECT INTO in this database的解决办法
    【IDEA】在IDEA中使用@Slf4j报错,找不到log
    【Java并发】线程的顺序执行
    MySQL报错码对照大全 清风徐来
    Java Swing日期控件的使用 清风徐来
    Android6.0使用BaiDu地图SDK动态获取定位权限 清风徐来
    Sublime Text 2学习记录
    Windows Phone开发笔记1:基础使用
    DirectX学习笔记:关于DX Component结构分析
    Windows 8 Metro开发学习笔记1
  • 原文地址:https://www.cnblogs.com/an-shiguang/p/14628623.html
Copyright © 2011-2022 走看看