PAM, Java를 사용하여 MariaDB에 연결할 수 없습니다.
저는 자바8과 마리아DB, 그리고 Percona에서 제공하는 PAM 모듈을 사용하고 있습니다.
$ java -version
java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b15, mixed mode)
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 117218
Server version: 10.3.9-MariaDB-log MariaDB Server
명령줄에서 연결할 수 있습니다.단, mysql-connector-java-8.0.15.jar를 사용하여 Java에서 접속하려고 하면 실패합니다.
java.sql.SQLException: Unable to load authentication plugin 'dialog'.
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.SQLError.createSQLException(SQLError.java:89)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:85)
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 java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
... 10 more
Caused by: com.mysql.cj.exceptions.WrongArgumentException: Unable to load authentication plugin 'dialog'.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:85)
at com.mysql.cj.protocol.a.NativeAuthenticationProvider.proceedHandshakeWithPluggableAuthentication(NativeAuthenticationProvider.java:572)
at com.mysql.cj.protocol.a.NativeAuthenticationProvider.connect(NativeAuthenticationProvider.java:202)
at com.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1449)
at com.mysql.cj.NativeSession.connect(NativeSession.java:165)
at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:955)
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:825)
... 14 more
언급URL : https://stackoverflow.com/questions/55656152/can-not-connect-to-mariadb-using-pam-java
'source' 카테고리의 다른 글
0에서 1 사이의 난수? (0) | 2022.11.23 |
---|---|
비정적 메서드에 대한 정적 참조를 만들 수 없습니다. (0) | 2022.11.23 |
Java의 가상 머신 및 CLR (0) | 2022.11.23 |
Java EE 6에서 Java 웹 응용 프로그램을 만들려면 무엇을 배워야 합니까? (0) | 2022.11.23 |
MySQL - 테이블 'my_table'이 테이블 잠금으로 잠기지 않았습니다. (0) | 2022.11.23 |