如何解决无法加载身份验证插件“caching_sha2_password"问题 [英] How to resolve Unable to load authentication plugin 'caching_sha2_password' issue

查看:55
本文介绍了如何解决无法加载身份验证插件“caching_sha2_password"问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 Eclipse 中,当我启动我的应用程序时,我得到了这个 - 无法发现要使用的方言.java.sql.SQLException: 无法加载身份验证插件caching_sha2_password".

In eclipse when i started my application i got this - Could not discover the dialect to use. java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'.

在 java.sql.SQLException: 无法加载身份验证插件'caching_sha2_password'.在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:868) 在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:864) 在com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1746)在 com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226) 在com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2191)在com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2222)在com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2017)在 com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:779)在 com.mysql.jdbc.JDBC4Connection.(JDBC4Connection.java:47)在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(来源不明)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(未知源)在 java.lang.reflect.Constructor.newInstance(Unknown来源)在 com.mysql.jdbc.Util.handleNewInstance(Util.java:425)在com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389) 在在com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330)在 java.sql.DriverManager.getConnection(Unknown Source) at atjava.sql.DriverManager.getConnection(Unknown Source) at atch.qos.logback.core.db.DriverManagerConnectionSource.getConnection(DriverManagerConnectionSource.java:54)在ch.qos.logback.core.db.ConnectionSourceBase.discoverConnectionProperties(ConnectionSourceBase.java:46)在ch.qos.logback.core.db.DriverManagerConnectionSource.start(DriverManagerConnectionSource.java:38)在ch.qos.logback.core.joran.action.NestedComplexPropertyIA.end(NestedComplexPropertyIA.java:161)在ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:309)在ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:193)在ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:179)在ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)在ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)在ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)在ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)在ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)在ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:75)在ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:150)在org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84) 在在org.slf4j.impl.StaticLoggerBinder.(StaticLoggerBinder.java:55)在 org.slf4j.LoggerFactory.bind(LoggerFactory.java:150) 在org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124)在org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:412) 在在ch.qos.logback.classic.util.StatusViaSLF4JLoggerFactory.addStatus(StatusViaSLF4JLoggerFactory.java:32)在ch.qos.logback.classic.util.StatusViaSLF4JLoggerFactory.addInfo(StatusViaSLF4JLoggerFactory.java:20)在ch.qos.logback.classic.servlet.LogbackServletContainerInitializer.onStartup(LogbackServletContainerInitializer.java:32)在org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5245)在org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)在org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1421)在org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1411)在 java.util.concurrent.FutureTask.run(Unknown Source) at atjava.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at在 java.util.concurrent.ThreadPoolExecutor$Worker.run(未知来源)在 java.lang.Thread.run(Unknown Source)

at java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'. at at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:868) at at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:864) at at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1746) at at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226) at at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2191) at at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2222) at at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2017) at at com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:779) at at com.mysql.jdbc.JDBC4Connection.(JDBC4Connection.java:47) at at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at at java.lang.reflect.Constructor.newInstance(Unknown Source) at at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389) at at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330) at at java.sql.DriverManager.getConnection(Unknown Source) at at java.sql.DriverManager.getConnection(Unknown Source) at at ch.qos.logback.core.db.DriverManagerConnectionSource.getConnection(DriverManagerConnectionSource.java:54) at at ch.qos.logback.core.db.ConnectionSourceBase.discoverConnectionProperties(ConnectionSourceBase.java:46) at at ch.qos.logback.core.db.DriverManagerConnectionSource.start(DriverManagerConnectionSource.java:38) at at ch.qos.logback.core.joran.action.NestedComplexPropertyIA.end(NestedComplexPropertyIA.java:161) at at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:309) at at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:193) at at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:179) at at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62) at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165) at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152) at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110) at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53) at at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:75) at at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:150) at at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84) at at org.slf4j.impl.StaticLoggerBinder.(StaticLoggerBinder.java:55) at at org.slf4j.LoggerFactory.bind(LoggerFactory.java:150) at at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124) at at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:412) at at ch.qos.logback.classic.util.StatusViaSLF4JLoggerFactory.addStatus(StatusViaSLF4JLoggerFactory.java:32) at at ch.qos.logback.classic.util.StatusViaSLF4JLoggerFactory.addInfo(StatusViaSLF4JLoggerFactory.java:20) at at ch.qos.logback.classic.servlet.LogbackServletContainerInitializer.onStartup(LogbackServletContainerInitializer.java:32) at at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5245) at at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1421) at at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1411) at at java.util.concurrent.FutureTask.run(Unknown Source) at at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at at java.lang.Thread.run(Unknown Source)

推荐答案

从 MySQL 8.0.4 开始,他们更改了默认值MySQL 服务器的身份验证插件从 mysql_native_passwordcaching_sha2_password.

您可以运行以下命令来解决问题.

You can run the below command to resolve the issue.

示例用户名/密码 => student/pass123

sample username / password => student / pass123

ALTER USER 'student'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pass123';

详情参考官方页面:MySQL参考手册

这篇关于如何解决无法加载身份验证插件“caching_sha2_password"问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆