MySQL connection issue
Twilight524 opened this issue ยท 1 comments
Description
I configured luckperm's config file with correct info, however, when player is trying to join the server, it shows errors below:
java.util.concurrent.CompletionException: java.sql.SQLTransientConnectionException: luckperms-hikari - Connection is not available, request timed out after 5000ms.
at me.lucko.luckperms.common.storage.Storage.lambda$future$0(Storage.java:91) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760) ~[?:?]
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?]
at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?]
at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?]
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?]
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?]
Caused by: java.sql.SQLTransientConnectionException: luckperms-hikari - Connection is not available, request timed out after 5000ms.
at me.lucko.luckperms.lib.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:696) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.getConnection(HikariPool.java:197) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.getConnection(HikariPool.java:162) ~[?:?]
at me.lucko.luckperms.lib.hikari.HikariDataSource.getConnection(HikariDataSource.java:100) ~[?:?]
at me.lucko.luckperms.common.storage.implementation.sql.connection.hikari.HikariConnectionFactory.getConnection(HikariConnectionFactory.java:172) ~[?:?]
at me.lucko.luckperms.common.storage.implementation.sql.SqlStorage.savePlayerData(SqlStorage.java:653) ~[?:?]
at me.lucko.luckperms.common.storage.Storage.lambda$savePlayerData$21(Storage.java:267) ~[?:?]
at me.lucko.luckperms.common.storage.Storage.lambda$future$0(Storage.java:86) ~[?:?]
... 7 more
Caused by: me.lucko.luckperms.lib.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
at me.lucko.luckperms.lib.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:833) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:453) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) ~[?:?]
at me.lucko.luckperms.lib.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.access$100(HikariPool.java:71) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:726) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:712) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:840) ~[?:?]
Caused by: me.lucko.luckperms.lib.mysql.cj.exceptions.CJCommunicationsException: Communications link failure
at jdk.internal.reflect.GeneratedConstructorAccessor106.newInstance(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:342) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeAuthenticationProvider.connect(NativeAuthenticationProvider.java:167) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1350) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.NativeSession.connect(NativeSession.java:157) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:953) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:823) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:453) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) ~[?:?]
at me.lucko.luckperms.lib.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.access$100(HikariPool.java:71) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:726) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:712) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:840) ~[?:?]
Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
at sun.security.ssl.HandshakeContext.(HandshakeContext.java:172) ~[?:?]
at sun.security.ssl.ClientHandshakeContext.(ClientHandshakeContext.java:103) ~[?:?]
at sun.security.ssl.TransportContext.kickstart(TransportContext.java:247) ~[?:?]
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:448) ~[?:?]
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:426) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.ExportControlled.performTlsHandshake(ExportControlled.java:317) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.StandardSocketFactory.performTlsHandshake(StandardSocketFactory.java:188) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeSocketConnection.performTlsHandshake(NativeSocketConnection.java:97) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:333) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeAuthenticationProvider.connect(NativeAuthenticationProvider.java:167) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1350) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.NativeSession.connect(NativeSession.java:157) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:953) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:823) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:453) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) ~[?:?]
at me.lucko.luckperms.lib.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) ~[?:?]
at me.lucko.luckperms.lib.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool.access$100(HikariPool.java:71) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:726) ~[?:?]
at me.lucko.luckperms.lib.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:712) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:840) ~[?:?]
I read the Q&A couple times and made sure mysql server is running as it should be, other plugins like authme and fastlogin work without issue, they all connect to same sql server and share the same username and password, just different database, I am confused, since they are all in my LAN (192.168.x,x), they should connect without any issue, here is my config below.
address: 192.168.2.71 (sql server address, running default 3306 port)
database: luckperm
Credentials for the database.
username: correct username
password: 'correct password'
Installed plugin
configured
start server
player join
error occured
Expected Behaviour
Plugin connect to mysql server
Server Details
PurPur 1.20.4
LuckPerms Version
5.4.122
Logs and Configs
https://gist.github.com/Twilight524/01d236148b7c0ce205c91c59bf73c687
Extra Details
No response