请有人帮我解决这个错误。我正在尝试构建一个应用程序来实现cdc for5,我已经使用了debezium连接器。
2022-01-25 12:52:02.806 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : including 'world.countrylanguage' among known tables
2022-01-25 12:52:02.806 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : 'world.countrylanguage' is filtered out of capturing
2022-01-25 12:52:02.806 WARN 108 --- [server-snapshot] io.debezium.config.Configuration : Using configuration property "table.whitelist" is deprecated and will be removed in future versions. Please use "table.include.list" instead.
2022-01-25 12:52:02.807 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : snapshot continuing with database(s): []
2022-01-25 12:52:02.808 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : Step 6: generating DROP and CREATE statements to reflect current database schemas:
2022-01-25 12:52:04.879 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : Step 7: committing transaction
2022-01-25 12:52:05.033 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : Step 8: releasing global read lock to enable MySQL writes
2022-01-25 12:52:05.051 INFO 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : Writes to MySQL tables prevented for a total of 00:00:04.843
2022-01-25 12:52:05.119 ERROR 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : Failed due to error: Aborting snapshot due to error when last running 'UNLOCK TABLES': tried to access field com.mysql.cj.CharsetMapping.COLLATION_INDEX_TO_COLLATION_NAME from class io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser
org.apache.kafka.connect.errors.ConnectException: tried to access field com.mysql.cj.CharsetMapping.COLLATION_INDEX_TO_COLLATION_NAME from class io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser
at io.debezium.connector.mysql.AbstractReader.wrap(AbstractReader.java:241) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.AbstractReader.failed(AbstractReader.java:218) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:846) [debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_281]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_281]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_281]
Caused by: java.lang.IllegalAccessError: tried to access field com.mysql.cj.CharsetMapping.COLLATION_INDEX_TO_COLLATION_NAME from class io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser
at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.extractCharset(MySqlAntlrDdlParser.java:403) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.antlr.listener.CreateAndAlterDatabaseParserListener.enterCreateDatabaseOption(CreateAndAlterDatabaseParserListener.java:49) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.ddl.parser.mysql.generated.MySqlParser$CreateDatabaseOptionContext.enterRule(MySqlParser.java:5754) ~[debezium-ddl-parser-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.antlr.ProxyParseTreeListenerUtil.delegateEnterRule(ProxyParseTreeListenerUtil.java:46) ~[debezium-ddl-parser-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.antlr.listener.MySqlAntlrDdlParserListener.enterEveryRule(MySqlAntlrDdlParserListener.java:89) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at org.antlr.v4.runtime.tree.ParseTreeWalker.enterRule(ParseTreeWalker.java:41) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:25) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:85) ~[debezium-ddl-parser-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.MySqlSchema.applyDdl(MySqlSchema.java:326) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:527) [debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
... 3 common frames omitted
2022-01-25 12:52:05.123 INFO 108 --- [pool-2-thread-1] io.debezium.jdbc.JdbcConnection : Connection gracefully closed
2022-01-25 12:52:05.361 INFO 108 --- [pool-1-thread-1] i.d.connector.common.BaseSourceTask : Stopping down connector
2022-01-25 12:52:05.362 INFO 108 --- [pool-1-thread-1] i.d.connector.mysql.MySqlConnectorTask : Stopping MySQL connector task
2022-01-25 12:52:05.362 INFO 108 --- [pool-1-thread-1] i.d.connector.mysql.ChainedReader : ChainedReader: Stopping the snapshot reader
2022-01-25 12:52:05.362 INFO 108 --- [pool-1-thread-1] i.d.connector.mysql.SnapshotReader : Discarding 0 unsent record(s) due to the connector shutting down
2022-01-25 12:52:05.362 INFO 108 --- [pool-1-thread-1] i.d.connector.mysql.SnapshotReader : Discarding 0 unsent record(s) due to the connector shutting down
2022-01-25 12:52:05.363 INFO 108 --- [pool-1-thread-1] i.d.connector.mysql.MySqlConnectorTask : Connector task finished all work and is now shutdown
2022-01-25 12:52:05.364 INFO 108 --- [pool-1-thread-1] o.a.k.c.storage.FileOffsetBackingStore : Stopped FileOffsetBackingStore
2022-01-25 12:52:05.367 ERROR 108 --- [pool-1-thread-1] io.debezium.embedded.EmbeddedEngine : Error while trying to run connector class 'io.debezium.connector.mysql.MySqlConnector'
org.apache.kafka.connect.errors.ConnectException: tried to access field com.mysql.cj.CharsetMapping.COLLATION_INDEX_TO_COLLATION_NAME from class io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser
at io.debezium.connector.mysql.AbstractReader.wrap(AbstractReader.java:241) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.AbstractReader.failed(AbstractReader.java:218) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:846) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_281]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_281]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_281]
Caused by: java.lang.IllegalAccessError: tried to access field com.mysql.cj.CharsetMapping.COLLATION_INDEX_TO_COLLATION_NAME from class io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser
at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.extractCharset(MySqlAntlrDdlParser.java:403) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.antlr.listener.CreateAndAlterDatabaseParserListener.enterCreateDatabaseOption(CreateAndAlterDatabaseParserListener.java:49) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.ddl.parser.mysql.generated.MySqlParser$CreateDatabaseOptionContext.enterRule(MySqlParser.java:5754) ~[debezium-ddl-parser-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.antlr.ProxyParseTreeListenerUtil.delegateEnterRule(ProxyParseTreeListenerUtil.java:46) ~[debezium-ddl-parser-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.antlr.listener.MySqlAntlrDdlParserListener.enterEveryRule(MySqlAntlrDdlParserListener.java:89) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at org.antlr.v4.runtime.tree.ParseTreeWalker.enterRule(ParseTreeWalker.java:41) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:25) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.7.2.jar:4.7.2]
at io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:85) ~[debezium-ddl-parser-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.MySqlSchema.applyDdl(MySqlSchema.java:326) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:527) ~[debezium-connector-mysql-1.4.2.Final.jar:1.4.2.Final]
... 3 common frames omitted发布于 2022-01-25 09:14:58
根据错误看起来,您没有足够的权限来运行此操作。对于连接到mysql数据库的debezium用户,您有什么特权?它是否具有复制客户机/从服务器和超级特权?
d.connector.mysql.SnapshotReader : Writes to MySQL tables prevented for a total of 00:00:04.843 2022-01-25 12:52:05.119 ERROR 108 --- [server-snapshot] i.d.connector.mysql.SnapshotReader : Failed due to error: Aborting snapshot due to error when last running 'UNLOCK TABLES': tried to access field https://stackoverflow.com/questions/70845050
复制相似问题