第一次使用springboot2.5 配置报错

【 TiDB 使用环境】生成环境
【 TiDB 版本】8.0.11-TiDB-v7.5.1
【遇到的问题】
springboot 2.5
prod.properties 配置数据库


报错

正确怎么配置
之前是mysql

jdbc-url 完整的是什么?是不是配置不兼容

spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:4000/demo?useUnicode=true&characterEncoding=utf8&useSSL=true
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

tidb集群开tls了么?

是的 我这边只用其中一个节点库

我改成false也报错

类似的问题,参照这个试下呢

1 个赞

报错信息 大概
: HikariPool-1 - Exception during pool initialization.

com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:175) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:825) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:446) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:239) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:188) ~[mysql-connector-j-8.0.33.jar:8.0.33]
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) [HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) [HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:115) [HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) [HikariCP-4.0.3.jar:na]
at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:158) [spring-jdbc-5.3.9.jar:5.3.9]
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:116) [spring-jdbc-5.3.9.jar:5.3.9]
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79) [spring-jdbc-5.3.9.jar:5.3.9]
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:646) [spring-jdbc-5.3.9.jar:5.3.9]
at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:991) [spring-jdbc-5.3.9.jar:5.3.9]

第一次使用 不太链接 之前mysql 换成 kingbase 什么 jdbc-url方式也不会报错 。看网上都说直接pom.xml 改成mysql 8.0.33
然后prod.properties


就可以 但是我尝试好像不可以。还需要注意哪些吗 老师

wait_timeout和interactive_timeout参数的值是多少

useSSL=false&useCursorFetch=true&useServerPrepStmts=true&cachePrepStmts=true&wait_timeout=28800&interactive_timeout=28800&connectTimeout=10000&allowPublicKeyRetrieval=true&useUnicode=true&rewriteBatchedStatements=true

当前配置换成mysql连接mysql有问题吗

参考如下试试,对应链接https://docs.pingcap.com/zh/tidb/stable/dev-guide-sample-application-java-spring-boot

除了这个Communications link failure,我们还经常遇到一个问题,SQL执行过程中出现Socket close,不知道是不是类似的问题

可能是

没有问题

我记得和Mysql差不多的配置,如果不加一些特性的话。先配置最简的,先能连上,用上。

你的配置应该没问题,要不换个驱动包试试,5.x的驱动包

和驱动包版本没有关系,我们之前是5.x的驱动包,现在换成了8.x的驱动包,也都有出现这个问题