开发者社区 > 数据库 > 关系型数据库 > 正文

RDS作为数据源就报以下错误,其他非RDS没问题,求解

RDS作为数据源就报以下错误,其他非RDS没问题,求解,谢谢。

*-web-launcher: 2019-04-19 15:22:29.695 [destination = MysqlEventParserFactoryBean.destination , address = rm-bp127us*:3306 , EventParser] ERROR com.alibaba.otter.canal.parse.inbound.mysql.rds.RdsBinlogEventParserProxy - dump address rm-bp127us*:3306 has an error, retrying. caused by
com.alibaba.otter.canal.parse.exception.CanalParseException: com.alibaba.otter.canal.parse.exception.CanalParseException: parse row data failed.
Caused by: com.alibaba.otter.canal.parse.exception.CanalParseException: parse row data failed.
Caused by: java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.LogEventConvert.parseOneRow(LogEventConvert.java:640)
at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.LogEventConvert.parseRowsEvent(LogEventConvert.java:533)
at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor$DmlParserStage.onEvent(MysqlMultiStageCoprocessor.java:330)
at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor$DmlParserStage.onEvent(MysqlMultiStageCoprocessor.java:316)
at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
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)

原提问者GitHub用户pc-fuqq

展开
收起
古拉古拉 2023-05-08 12:19:33 101 0
2 条回答
写回答
取消 提交回答
  • 对应是啥版本?RDS估计有一些隐藏主键,试一下最新的版本,印象中有修复过

    原回答者GitHub用户agapple

    2023-05-09 17:33:04
    赞同 展开评论 打赏
  • 这个错误是由于 Canal 在解析 RDS 数据源时出现了问题。有以下几种可能的原因:

    1. RDS 数据库的 binlog 格式不正确。Canal 目前只支持 ROW 格式的 binlog,需要检查 RDS 数据库的 binlog 格式是否正确。
    2. RDS 数据库的 binlog 格式版本过低。Canal 要求 RDS 数据库的 binlog 格式版本必须大于等于 MySQL 5.5。需要检查 RDS 数据库的 binlog 格式版本是否符合要求。
    3. RDS 数据库的账号权限不足。Canal 需要使用 SUPER 权限才能订阅 RDS 数据库的 binlog,需要检查订阅账号是否拥有足够的权限。
    2023-05-08 16:12:33
    赞同 展开评论 打赏

阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。

相关产品

  • 云数据库 RDS MySQL 版
  • 云数据库 RDS
  • 相关电子书

    更多
    搭建电商项目架构连接MySQL 立即下载
    搭建4层电商项目架构,实战连接MySQL 立即下载
    PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

    相关镜像