org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
.......
Caused by: org.hibernate.exception.JDBCConnectionException: Error calling Driver#connect
........
Caused by: java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'.
.......
问题处在mysql驱动的版本问题上
出问题前使用的mysql是5.1.41
<!--添加hibernate的核心依赖-->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.0.12.Final</version>
</dependency>
<!--添加mysql的jdbc驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.41</version>
</dependency>
之后改成更高一些的版本
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
改成更高版本后驱动就不能在使用过时的com.mysql.jdbc.Driver
改成com.mysql.cj.jdbc.Driver
本文详细解析了在升级MySQL驱动版本后,从5.1.41到8.0.17,因驱动不兼容导致的ServiceException及SQLException错误。阐述了如何修改配置,将驱动类从com.mysql.jdbc.Driver更改为com.mysql.cj.jdbc.Driver,以解决无法加载caching_sha2_password认证插件的问题。
31万+

被折叠的 条评论
为什么被折叠?



