微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mybatis或hibernate框架连接数据库报错:java.sql.SQLException: Access denied for user 'Administrator'@&

 

报错信息:

java.sql.sqlException: Access denied for user 'Administrator'@'localhost' (using password: YES)

 

严重: create connection sqlException, url: jdbc:MysqL://localhost:3306/db2?&useSSL=false&serverTimezone=UTC, errorCode 1045, state 28000
java.sql.sqlException: Access denied for user 'Administrator'@'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:835)
    at com.MysqL.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:455)
    at com.MysqL.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240)
    at com.MysqL.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)
    at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1644)
    at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1710)
    at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2753)

 

明明密码对的,被拒绝了,找了好久原因,后来发现将db.properties配置文件里的username改为jdbc.username就好了,可能是因为username被系统变量占用了。
spring容器在进行启动的时候,会读取当前系统某些环境变量的配置,当前系统的用户名使用username来表示的,所以做好的方式是添加前缀,使用jdbc.username.

 

jdbc.username=root
jdbc.password=root
jdbc.url=jdbc:MysqL://localhost:3306/db2?&useSSL=false&serverTimezone=UTC
jdbc.driverClassName=com.MysqL.cj.jdbc.Driver

 

 

转: https://www.cnblogs.com/tyhA-nobody/p/13166892.html

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐