开发者社区> 问答> 正文

canal启动报错com.alibaba.otter.canal.parse.exception.C

启动之后报错

2018-01-05 15:36:23.539 [destination = example , address = ip/ip:3306 , EventParser] WARN c.a.otter.canal.parse.inbound.mysql.MysqlEventParser - prepare to find start position just show master status 2018-01-05 15:36:30.095 [destination = example , address = ip/ip:3306 , EventParser] ERROR c.a.otter.canal.parse.inbound.mysql.MysqlEventParser - dump address ip/ip:3306 has an error, retrying. caused by com.alibaba.otter.canal.parse.exception.CanalParseException: java.io.IOException: ErrorPacket [errorNumber=1142, fieldCount=-1, message=SHOW command denied to user 'shencesys'@'ip' for table 'slow_log', sqlState=42000, sqlStateMarker=#] with command: show create table mysql.event;show create table mysql.func;show create table mysql.general_log;show create table mysql.help_category;show create table mysql.help_keyword;show create table mysql.help_relation;show create table mysql.help_topic;show create table mysql.proc;show create table mysql.slow_log;show create table mysql.time_zone;show create table mysql.time_zone_leap_second;show create table mysql.time_zone_name;show create table mysql.time_zone_transition;show create table mysql.time_zone_transition_type; Caused by: java.io.IOException: ErrorPacket [errorNumber=1142, fieldCount=-1, message=SHOW command denied to user 'shencesys'@'ip' for table 'slow_log', sqlState=42000, sqlStateMarker=#] with command: show create table mysql.event;show create table mysql.func;show create table mysql.general_log;show create table mysql.help_category;show create table mysql.help_keyword;show create table mysql.help_relation;show create table mysql.help_topic;show create table mysql.proc;show create table mysql.slow_log;show create table mysql.time_zone;show create table mysql.time_zone_leap_second;show create table mysql.time_zone_name;show create table mysql.time_zone_transition;show create table mysql.time_zone_transition_type; at com.alibaba.otter.canal.parse.driver.mysql.MysqlQueryExecutor.queryMulti(MysqlQueryExecutor.java:109) ~[canal.parse.driver-1.0.25.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.queryMulti(MysqlConnection.java:93) ~[canal.parse-1.0.25.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql.tsdb.DatabaseTableMeta.dumpTableMeta(DatabaseTableMeta.java:173) ~[canal.parse-1.0.25.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql.tsdb.DatabaseTableMeta.rollback(DatabaseTableMeta.java:127) ~[canal.parse-1.0.25.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql.AbstractMysqlEventParser.processTableMeta(AbstractMysqlEventParser.java:72) ~[canal.parse-1.0.25.jar:na] at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:170) ~[canal.parse-1.0.25.jar:na] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] 2018-01-05 15:36:30.096 [destination = example , address = ip/ip:3306 , EventParser] ERROR com.alibaba.otter.canal.common.alarm.LogAlarmHandler - destination:example[com.alibaba.otter.canal.parse.exception.CanalParseException: java.io.IOException: ErrorPacket [errorNumber=1142, fieldCount=-1, message=SHOW command denied to user 'shencesys'@'ip' for table 'slow_log', sqlState=42000, sqlStateMarker=#] with command: show create table mysql.event;show create table mysql.func;show create table mysql.general_log;show create table mysql.help_category;show create table mysql.help_keyword;show create table mysql.help_relation;show create table mysql.help_topic;show create table mysql.proc;show create table mysql.slow_log;show create table mysql.time_zone;show create table mysql.time_zone_leap_second;show create table mysql.time_zone_name;show create table mysql.time_zone_transition;show create table mysql.time_zone_transition_type; Caused by: java.io.IOException: ErrorPacket [errorNumber=1142, fieldCount=-1, message=SHOW command denied to user 'shencesys'@'ip' for table 'slow_log', sqlState=42000, sqlStateMarker=#] with command: show create table mysql.event;show create table mysql.func;show create table mysql.general_log;show create table mysql.help_category;show create table mysql.help_keyword;show create table mysql.help_relation;show create table mysql.help_topic;show create table mysql.proc;show create table mysql.slow_log;show create table mysql.time_zone;show create table mysql.time_zone_leap_second;show create table mysql.time_zone_name;show create table mysql.time_zone_transition;show create table mysql.time_zone_transition_type; at com.alibaba.otter.canal.parse.driver.mysql.MysqlQueryExecutor.queryMulti(MysqlQueryExecutor.java:109) at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.queryMulti(MysqlConnection.java:93) at com.alibaba.otter.canal.parse.inbound.mysql.tsdb.DatabaseTableMeta.dumpTableMeta(DatabaseTableMeta.java:173) at com.alibaba.otter.canal.parse.inbound.mysql.tsdb.DatabaseTableMeta.rollback(DatabaseTableMeta.java:127) at com.alibaba.otter.canal.parse.inbound.mysql.AbstractMysqlEventParser.processTableMeta(AbstractMysqlEventParser.java:72) at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:170) at java.lang.Thread.run(Thread.java:745)

账号权限如下

mysql> show grants for shencesys; +---------------------------------------------------------------------------------------------------------------------------------------------------+ | Grants for shencesys@% | +---------------------------------------------------------------------------------------------------------------------------------------------------+ | GRANT PROCESS, REPLICATION SLAVE, REPLICATION CLIENT ON . TO 'shencesys'@'%' IDENTIFIED BY PASSWORD '***********************************' | | GRANT SELECT, LOCK TABLES, SHOW VIEW ON xbdchainfin.* TO 'shencesys'@'%' | | GRANT SELECT ON performance_schema.* TO 'shencesys'@'%' | | GRANT SELECT ON mysql.func TO 'shencesys'@'%' | | GRANT SELECT ON mysql.help_relation TO 'shencesys'@'%' | | GRANT SELECT ON mysql.time_zone_leap_second TO 'shencesys'@'%' | | GRANT SELECT ON mysql.time_zone_transition TO 'shencesys'@'%' | | GRANT SELECT ON mysql.help_keyword TO 'shencesys'@'%' | | GRANT SELECT ON mysql.slow_log TO 'shencesys'@'%' | | GRANT SELECT ON mysql.event TO 'shencesys'@'%' | | GRANT SELECT ON mysql.proc TO 'shencesys'@'%' | | GRANT SELECT ON mysql.general_log TO 'shencesys'@'%' | | GRANT SELECT ON mysql.help_category TO 'shencesys'@'%' | | GRANT SELECT ON mysql.help_topic TO 'shencesys'@'%' | | GRANT SELECT ON mysql.time_zone TO 'shencesys'@'%' | | GRANT SELECT ON mysql.time_zone_name TO 'shencesys'@'%' | | GRANT SELECT ON mysql.time_zone_transition_type TO 'shencesys'@'%' | +---------------------------------------------------------------------------------------------------------------------------------------------------+

原提问者GitHub用户jinxiaoxin

展开
收起
绿子直子 2023-05-09 11:55:49 216 0
1 条回答
写回答
取消 提交回答
  • show create table mysql.event;show create table mysql.func;show create table mysql.general_log;show create table mysql.help_category;show create table mysql.help_keyword;show create table mysql.help_relation;show create table mysql.help_topic;show create table mysql.proc;show create table mysql.slow_log;show create table mysql.time_zone;show create table mysql.time_zone_leap_second;show create table mysql.time_zone_name;show create table mysql.time_zone_transition;show create table mysql.time_zone_transition_type;

    执行一下对应的sql

    原回答者GitHub用户agapple

    2023-05-10 10:22:02
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载