应龙团队你好:
我在搭建开发环境时配置数据流组失败,经过查看日志时发现报错,日志内容如下:
org.apache.flink.client.program.ProgramInvocationException: The main method
caused an error: Unable to create a sink for writing table
'default_catalog.default_database.table_12_mysql'.
Table options are:
'connector'='jdbc-inlong'
'inlong.metric.labels'='groupId=museum&streamId=inlong&nodeId=12_mysql'
'password'='******'
'table-name'='rbac'
'url'='jdbc:mysql://10.130.1.12:3306/inlong?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=Asia/Shanghai&autoDeserialize=false&allowUrlInLocalInfile=false&allowLoadLocalInfile=false'
'username'='root'
at
org.apache.flink.table.factories.FactoryUtil.createDynamicTableSink(FactoryUtil.java:262)
~[flink-table-common-1.15.4.jar:1.15.4]
at
org.apache.flink.table.planner.delegation.PlannerBase.getTableSink(PlannerBase.scala:434)
~[flink-table-planner_2.12-1.15.4.jar:1.15.4]
at
org.apache.flink.table.planner.delegation.PlannerBase.translateToRel(PlannerBase.scala:227)
~[flink-table-planner_2.12-1.15.4.jar:1.15.4]
at
org.apache.flink.table.planner.delegation.PlannerBase.$anonfun$translate$1(PlannerBase.scala:185)
~[flink-table-planner_2.12-1.15.4.jar:1.15.4]
at
scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:233)
~[scala-library-2.12.7.jar:?]
at scala.collection.Iterator.foreach(Iterator.scala:937)
~[scala-library-2.12.7.jar:?]
at scala.collection.Iterator.foreach$(Iterator.scala:937)
~[scala-library-2.12.7.jar:?]
at scala.collection.AbstractIterator.foreach(Iterator.scala:1425)
~[scala-library-2.12.7.jar:?]
at scala.collection.IterableLike.foreach(IterableLike.scala:70)
~[scala-library-2.12.7.jar:?]
at scala.collection.IterableLike.foreach$(IterableLike.scala:69)
~[scala-library-2.12.7.jar:?]
at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
~[scala-library-2.12.7.jar:?]
at scala.collection.TraversableLike.map(TraversableLike.scala:233)
~[scala-library-2.12.7.jar:?]
at scala.collection.TraversableLike.map$(TraversableLike.scala:226)
~[scala-library-2.12.7.jar:?]
at scala.collection.AbstractTraversable.map(Traversable.scala:104)
~[scala-library-2.12.7.jar:?]
at
org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:185)
~[flink-table-planner_2.12-1.15.4.jar:1.15.4]
at
org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1656)
~[flink-table-api-java-1.15.4.jar:1.15.4]
at
org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:782)
~[flink-table-api-java-1.15.4.jar:1.15.4]
at
org.apache.flink.table.api.internal.StatementSetImpl.execute(StatementSetImpl.java:108)
~[flink-table-api-java-1.15.4.jar:1.15.4]
at
org.apache.inlong.sort.parser.result.FlinkSqlParseResult.executeLoadSqls(FlinkSqlParseResult.java:84)
~[?:?]
at
org.apache.inlong.sort.parser.result.FlinkSqlParseResult.execute(FlinkSqlParseResult.java:63)
~[?:?]
at org.apache.inlong.sort.Entrance.main(Entrance.java:99) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:1.8.0_144]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:1.8.0_144]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:1.8.0_144]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_144]
at
org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:355)
~[flink-clients-1.15.4.jar:1.15.4]
... 12 more
Caused by: java.lang.IllegalStateException: Could not find any jdbc dialect
factory that can handle url
'jdbc:mysql://10.130.1.12:3306/inlong?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=Asia/Shanghai&autoDeserialize=false&allowUrlInLocalInfile=false&allowLoadLocalInfile=false'
that implements 'org.apache.inlong.sort.jdbc.dialect.JdbcDialectFactory' in
the classpath.
Available factories are:
org.apache.inlong.sort.jdbc.dialect.clickhouse.ClickHouseDialectFactory
经过分析发现 sort-connector-jdbc-v1.15-1.13.0.jar 没有MysqlDialectFactory 。
问题:
1.
我不明白为啥v1.15版本为啥删除了MysqlDialect 但是inlong为啥又在用?
2.
查看官网得知inlong支持flink v13.6和flink v15.4, 但是我使用
sort-connector-jdbc-v1.15-1.13.0.jar 为啥会提示上述错误?
3.