开发者社区> 问答> 正文

canal 词法分析不支持mysql 虚列

环境信息

canal version 1.1.1 mysql version 5.7.19

问题描述

com.alibaba.fastsql.sql.parser.ParserException: syntax error, error in :'int(11) GENERATED ALWAYS AS ((`cur', expect ), actual null, pos 1190, line 24, column 38, token IDENTIFIER GENERATED

fastsql-2.0.0_preview_644 词法分析看上去不支持 mysql虚列 ..

原提问者GitHub用户weitong1105

展开
收起
古拉古拉 2023-05-08 13:48:12 62 0
2 条回答
写回答
取消 提交回答
  • 目前虚拟列的tsdb解析的确是不支持,1.1.4 当前主干已支持虚拟列的解析。

    原回答者GitHub用户agapple

    2023-05-09 17:48:44
    赞同 展开评论 打赏
  • 随心分享,欢迎友善交流讨论:)

    根据您提供的信息,您在使用 Canal 1.1.1 版本时,遇到了 com.alibaba.fastsql.sql.parser.ParserException 异常,提示词法分析不支持 MySQL 虚拟列。这个问题可能是由于 Canal 对 MySQL 虚拟列的支持不完全导致的。

    MySQL 虚拟列是一种特殊的列类型,它不存储实际的数据,而是通过计算和表达式计算得出。这种列类型在 MySQL 5.7 版本中引入,可以方便地计算和生成一些特定的值,例如自增列、时间戳等。但是,由于虚拟列的计算方式比较复杂,因此 Canal 词法分析器可能无法完全支持。

    针对这个问题,建议您升级到最新版本的 Canal,以获得更好的 MySQL 虚拟列支持和更稳定的性能。另外,您也可以手动处理这些虚拟列,例如在 Canal 配置文件中设置 skipVirtualColumn 参数来跳过虚拟列的解析,或者使用其他工具来解析和处理虚拟列的数据。

    希望以上信息能够帮助您解决问题。

    2023-05-08 14:17:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

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

相关镜像