Maison  >  Article  >  Java  >  Comment résoudre l'erreur de Springboot en utilisant le pool de connexion à la base de données Druid d'Alibaba

Comment résoudre l'erreur de Springboot en utilisant le pool de connexion à la base de données Druid d'Alibaba

WBOY
WBOYavant
2023-05-13 12:58:112483parcourir

    使用alibaba的druid数据库连接池错误

    使用springboot整合mybatis时发生了以下错误

    2019-01-15 11:51:43.771 ERREUR 14656 --- [eate-2056859249] com.alibaba .druid.pool.DruidDataSource  : créer une connexion SQLException, url : jdbc:mysql://localhost:3306/hong?useUnicode=true&characterEncoding=UTF-8, errorCode 0, état 01S00

    java.sql.SQLException : le fuseau horaire du serveur valeur 'Öйú±ê׼ʱ¼ä' n’est pas reconnu ou représente plusieurs fuseaux horaires. Vous devez configurer le serveur ou le pilote JDBC (via la propriété de configuration serverTimezone) pour utiliser une valeur de fuseau horaire plus spécifique si vous souhaitez utiliser la prise en charge du fuseau horaire.
        sur com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError .java:129) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) ~[mysql-connector -java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89) ~[mysql-connector-java-8.0.13.jar:8.0 .13]
        sur com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj .jdbc.exceptions.SQLError.createSQLException(SQLError.java:73) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping .java:76) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) ~[mysql-connector-java -8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) ~[mysql-connector-java-8.0.13.jar:8.0. 13]
        sur com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc. NonRegisteringDriver.connect(NonRegisteringDriver.java:207) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1513) ~[ druid-1.1.9.jar:1.1.9]
        sur com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1578) ~[druid-1.1.9.jar:1.1.9]
        sur com. alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2466) ~[druid-1.1.9.jar:1.1.9]
    Causé par : com.mysql.cj.exceptions.InvalidConnectionAttributeException : le fuseau horaire du serveur valeur 'Öйú±ê׼ʱ¼ä' n’est pas reconnu ou représente plusieurs fuseaux horaires. Vous devez configurer le serveur ou le pilote JDBC (via la propriété de configuration serverTimezone) pour utiliser une valeur de fuseau horaire plus spécifique si vous souhaitez utiliser la prise en charge du fuseau horaire.
        sur sun.reflect.NativeConstructorAccessorImpl.newInstance0(Méthode native) ~[na : 1.8.0_191]
    à Sun.Reflect.NativeConstructorAccessOrimpl.NewInstance (NativeConstructorAccessOrimp.java:62) ~ [Na: 1.8.0_191]
    à Sun.Reflect.DelegatingContructorAccessOrimpl. 8 0_191]
        sur java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_191]
        sur com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61) ~[ mysql-connector-java-8.0.13.jar:8.0.13]
       sur com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:85) ~[mysql-connector-java-8.0.13.jar : 8.0.13]
        sur com.mysql.cj.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:132) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj. protocol.a.NativeProtocol.configureTimezone(NativeProtocol.java:2234) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.protocol.a.NativeProtocol.initServerSession(NativeProtocol. java:2258) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1319) ~[mysql-connector-java- 8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:966) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        sur com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:825) ~[mysql-connector-java-8.0.13.jar:8.0.13]
        ... 6 cadres communs omis

    maven dépend de

    Comment résoudre lerreur de Springboot en utilisant le pool de connexion à la base de données Druid dAlibaba

    configuration de l'application

    Ici, j'utilise yml

    Comment résoudre lerreur de Springboot en utilisant le pool de connexion à la base de données Druid dAlibaba

    Au début, je pensais que c'était un problème avec les versions du pilote et du pool de connexions, mais plus tard je les ai toutes changées pour la dernière version et j'ai toujours la même erreur.

    Solution

    Enfin, j'ai trouvé un problème avec le format de l'heure qui avait été initialement remis. L'heure était 8 heures plus rapide. Enfin, j'ai ajouté serverTimeZone=GMT après l'URL de configuration de l'application et le problème a été résolu.

    Comment résoudre lerreur de Springboot en utilisant le pool de connexion à la base de données Druid dAlibaba

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer