MyCATApache / Mycat-Server

GNU General Public License v2.0
9.49k stars 3.85k forks source link

Could not create connection to database server. Attempted reconnect 3 times. Giving up.1.6.5mycat使用 mysql驱动8.0.13 #2262

Open SZMOFEI opened 5 years ago

SZMOFEI commented 5 years ago

我使用的mysql-connector-java 版本是 8.0.13 我使用的### mycat 的版本是 1.6.5 application.yml 配置如下:

spring:
    datasource:
     type: com.alibaba.druid.pool.DruidDataSource
     url: jdbc:mysql://192.168.0.174:8066/skyway_logic?tinyInt1isBit=false&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
    username: test
    password: test
    driver-class-name: com.mysql.jdbc.Driver

当我运行程序的时候出现下面的异常?

2019-07-25 11:19:08.457 ERROR 32844 --- [eate-1754096028] com.alibaba.druid.pool.DruidDataSource   : create connection SQLException, url: jdbc:mysql://192.168.0.174:8066/skyway_logic?tinyInt1isBit=false&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull, errorCode 0, state 08001

java.sql.SQLNonTransientConnectionException: **Could not create connection to database server. Attempted reconnect 3 times. Giving up.**
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)
    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.ConnectionImpl.connectWithRetries(ConnectionImpl.java:905)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:830)
    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:207)
    at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:156)
    at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:218)
    at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:150)
    at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1560)
    at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1623)
    at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2468)

但是当我把mysql-connector-java 的version 1降到 5.1.34 的时候,程序能够正常启动,

请问我如何做才能兼容 8.0.13mysql-connector-java 呢? @linkerlin

junwen12221 commented 5 years ago

用1.6.7.1试试,或者1.6分支的代码

sizehfang commented 4 years ago

1.6release版也不支持mysql-connector-java的8。