有人可以帮助我解决Siddhi流处理器中的此问题吗?

问题描述 投票:1回答:1

[2020-05-06_16-31-42_744]错误{com.zaxxer.hikari.pool.HikariPool}-HikariPool-32-池初始化期间发生异常。java.sql.SQLException:服务器时区值“未知”无法识别或代表多个时区。如果要利用时区支持,则必须配置服务器或JDBC驱动程序(通过“ serverTimezone”配置属性)以使用更特定的时区值。在com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)在com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)在com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)在com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)在com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)在com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)在com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)在com.mysql.cj.jdbc.ConnectionImpl。(ConnectionImpl.java:456)在com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)在com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197)在com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:121)在com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:353)在com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:201)在com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:473)在com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:562)在com.zaxxer.hikari.pool.HikariPool。(HikariPool.java:115)在com.zaxxer.hikari.HikariDataSource。(HikariDataSource.java:81)在io.siddhi.extension.store.rdbms.RDBMSEventTable.initializeDatasource(RDBMSEventTable.java:1362)在io.siddhi.extension.store.rdbms.RDBMSEventTable.connect(RDBMSEventTable.java:1092)在io.siddhi.core.table.record.AbstractQueryableRecordTable.connectAndLoadCache(AbstractQueryableRecordTable.java:206)在io.siddhi.core.table.Table.connectWithRetry(Table.java:406)在io.siddhi.core.SiddhiAppRuntimeImpl.startWithoutSources(SiddhiAppRuntimeImpl.java:455)在io.siddhi.core.SiddhiAppRuntimeImpl.start(SiddhiAppRuntimeImpl.java:424)在io.siddhi.distribution.editor.core.internal.DebugRuntime.start(DebugRuntime.java:93)上在io.siddhi.distribution.editor.core.internal.DebugProcessorService.start(DebugProcessorService.java:42)在io.siddhi.distribution.editor.core.internal.EditorMicroservice.start(EditorMicroservice.java:761)在io.siddhi.distribution.editor.core.internal.EditorMicroservice.startWithVariables(EditorMicroservice.java:781)在sun.reflect.GeneratedMethodAccessor18.invoke(未知来源)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在java.lang.reflect.Method.invoke(Method.java:498)在org.wso2.msf4j.internal.router.HttpMethodInfo.invokeResource(HttpMethodInfo.java:187)在org.wso2.msf4j.internal.router.HttpMethodInfo.invoke(HttpMethodInfo.java:143)在org.wso2.msf4j.internal.MSF4JHttpConnectorListener.dispatchMethod(MSF4JHttpConnectorListener.java:218)在org.wso2.msf4j.internal.MSF4JHttpConnectorListener.lambda $ onMessage $ 58(MSF4JHttpConnectorListener.java:129)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

由com.mysql.cj.exceptions.InvalidConnectionAttributeException引起:无法识别服务器时区值“未知”或代表多个时区。如果要利用时区支持,则必须配置服务器或JDBC驱动程序(通过“ serverTimezone”配置属性)以使用更特定的时区值。在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)处在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)在java.lang.reflect.Constructor.newInstance(Constructor.java:423)在com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)在com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:85)在com.mysql.cj.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:132)在com.mysql.cj.protocol.a.NativeProtocol.configureTimezone(NativeProtocol.java:2120)在com.mysql.cj.protocol.a.NativeProtocol.initServerSession(NativeProtocol.java:2143)在com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1310)在com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:967)在com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:826)... 30更多

[2020-05-06_16-31-42_749]错误{io.siddhi.core.table.Table}-'Assignment_02_01'错误。无法初始化池:服务器时区值“未知”无法识别或代表多个时区。如果要利用时区支持,则必须配置服务器或JDBC驱动程序(通过“ serverTimezone”配置属性)以使用更特定的时区值。 。连接到表“ table1”时出错。 (已编码)com.zaxxer.hikari.pool.HikariPool $ PoolInitializationException:无法初始化池:无法识别服务器时区值“未知”或代表多个时区。如果要利用时区支持,则必须配置服务器或JDBC驱动程序(通过“ serverTimezone”配置属性)以使用更特定的时区值。在com.zaxxer.hikari.pool.HikariPool.throwPoolInitializationException(HikariPool.java:597)在com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:576)在com.zaxxer.hikari.pool.HikariPool。(HikariPool.java:115)在com.zaxxer.hikari.HikariDataSource。(HikariDataSource.java:81)在io.siddhi.extension.store.rdbms.RDBMSEventTable.initializeDatasource(RDBMSEventTable.java:1362)在io.siddhi.extension.store.rdbms.RDBMSEventTable.connect(RDBMSEventTable.java:1092)

mysql siddhi
1个回答
0
投票

错误原因为

服务器时区值“未知”无法识别或表示多个时区。您必须配置服务器或JDBC驱动程序

In jdbcURL string

更新为

?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC

将上面的行放在您的数据库名称之后,检查下面的示例

databaseName=yourDbNameThenput?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
© www.soinside.com 2019 - 2024. All rights reserved.