mysql密码正确SpringBoot却连接不上SQLException: Access denied for user ‘root‘@‘localhost‘ (using password: YES

mysql密码正确,SpringBoot却连接不上

先看看报错信息:
在这里插入图片描述

解决方案
  • 先查看yml中的账号密码后面是否有空格
    在这里插入图片描述

  • 未解决则在驱动后面加上时区试试看
    在这里插入图片描述

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

记得修改成自己的数据库名!

  • 查看mysql版本
    MySQL8(具体啥版本忘记了)以后的驱动使用:
com.mysql.cj.jdbc.Driver

MySQL8之前的使用:

com.mysql.jdbc.Driver

查看MySQL版本
1:打开终端输入命令

mysql -uroot -p

在这里插入图片描述
在这里插入图片描述
我的版本是8.0.19

  • 如果MySQL连接为Integer类型,则需要加上双引号
    在idea中按两次shift键,找到DataSourceProperties类,因为驱动会自动装配到这个类中
    在这里插入图片描述
    找到setPassword方法,打上断点,随后将项目debug运行
    在这里插入图片描述
    我的密码是password,所以这里也是,如果你们的是Integer类型,就需要双引号包裹,不然可能会转换类型
    在这里插入图片描述

  • 也有说是用户权限的问题
    关于用户权限的问题,我记得root用户好像就是最高权限,所以不需要修改权限,当然也有可能不对
    查看权限命令
    我这里使用了navicat工具了,连接上mysql输入命令即可

select * from mysql.user

在这里插入图片描述
可以看到root用户权限是最高的

  • 禅道服务端口与mysql冲突
    如果有下载的禅道的猿猿们,可以看下
    在这里插入图片描述
    禅道的端口是3306,而mysql的端口也是3306,而禅道服务器一直没关,应该SpringBoot连接3306这个端口时,连接上禅道了,从而导致连接不上本地mysql(我就是这个问题)
    但是禅道的MySQL与本地的MySQL有什么区别,目前还未研究
    解决方案
    1:直接关闭禅道服务器即可
    2:打开任务管理器,将mysqlzb服务关闭
    在这里插入图片描述
    3:修改禅道的端口
    点击服务,选择配置端口
    在这里插入图片描述
    将端口修改成另外的端口即可
    在这里插入图片描述

希望能帮到你们,完结撒花!!!!

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
java.sql.SQLException: Access denied for user 'root'@'kylin200' (using password: YES) 是一个数据库连接错误,表示用户 'root'@'kylin200' 由于密码错误而无法访问数据库。 解决这个问题的方法是确保使用正确的用户名和密码进行数据库连接。请按照以下步骤进行操作: 1. 确认用户名和密码:检查你正在使用的用户名和密码是否正确。确保密码没有拼写错误,并且与数据库的用户密码匹配。 2. 检查主机名:检查你正在连接的主机名是否正确。确保主机名与数据库的主机名匹配。 3. 检查权限:确保用户具有足够的权限来访问数据库。你可以使用GRANT语句为用户授予适当的权限。 4. 检查网络连接:确保你的网络连接正常。如果你使用的是远程数据库服务器,请确保你可以成功连接到该服务器。 5. 检查防火墙设置:如果你的数据库服务器位于受防火墙保护的网络,请确保防火墙允许从你的应用程序访问数据库服务器。 以下是一个示例代码,演示了如何使用Java连接MySQL数据库: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DatabaseConnection { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "your_password"; try { Connection connection = DriverManager.getConnection(url, username, password); System.out.println("Connected to the database!"); // 执行其他数据库操作... } catch (SQLException e) { System.out.println("Failed to connect to the database!"); e.printStackTrace(); } } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值