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

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 93 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
  • 热门讨论

    热门文章

    相关电子书

    更多
    TcpRT:阿里云RDS智能诊断系统云上大规模部署自动化服务的客户实践经验 立即下载
    TcpRT:面向大规模海量云数据库的服务质量实时采集与诊断系 立即下载
    袋鼠云基于阿里云RDS的数据库架构实践 立即下载

    相关镜像