Java项目连接数据库Mysql报错create connection SQLException

       今天编写了一个Java项目,对数据库Mysql的表进行增删改查,然后遇到了这个问题

严重: create connection SQLException, url: jdbc:mysql://localhost:3306/springdb, errorCode 1045, state 28000
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1652)
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1718)
at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2785)

   百度了这个问题,根据网友们的建议进行如下检查:

   1、检查DataSource代码块中的url、username、password、端口号是否与数据库的相应信息对应

     url=jdbc:mysql://localhost:3306/springdb

          username=root

          passwd=123456
          max=20
注:特别注意url,该冒号的地方冒号,该斜杠的地方斜杠,不能省
2、如若有用
3、以上都检查了,还是出现了这个问题,最终查出我出现这个问题的原因是版本问题,我的Mysql的版本是8.0.21,项目中引入的mysql驱动依赖的版本是8.0.21,之后改成5.1.45,就没有问题了,可以通过mybatis对数据库进行增删改查了
引用网友的话:进过一番查询,最后发现是数据库连接驱动版本的问题,根据[DRDS官方文档说明](https://help.aliyun.com/document_detail/117762.html),DRDS实例mysql版本为5.X,因此如果使用了高版本的mysql驱动,是无法进行连接的。

     

 

posted @ 2020-12-20 22:39  雨后天  阅读(19612)  评论(0编辑  收藏  举报