美文网首页
Syncer数据同步

Syncer数据同步

作者: Fonzie | 来源:发表于2018-07-16 17:26 被阅读35次

    使用Syncer数据同步遇到的问题:

    syncer版本:

    2018/07/16 17:24:43 DEBUG Now using Go's stdlib log package (via loggers/mappers/stdlib).
    Release Version: v1.0.0-16-g102463e
    Git Commit Hash: 102463ee614ba4fe5234486e26ef435daa6f2847
    Git Branch: master
    UTC Build Time: 2018-06-27 06:25:00
    Go Version: go version go1.10.2 linux/amd64
    
    • syncer报错日志:
    2018/07/16 16:23:22 main.go:79: [error] /home/jenkins/workspace/build_tidb_enterprise_tools_master/go/src/github.com/pingcap/tidb-enterprise-tools/syncer/syncer.go:529: gen insert sqls failed: insert columns and data mismatch in length: 5 vs 6, schema: xiaomai, table: institution_product_course
    /home/jenkins/workspace/build_tidb_enterprise_tools_master/go/src/github.com/pingcap/tidb-enterprise-tools/syncer/syncer.go:165:  
    2018/07/16 16:23:22 syncer.go:752: [info] print status exits, err:context canceled
    

    同步出现了两边表结构不一致的问题,查询RDS和TIDB两边的表结构:


    image.png

    RDS上的建表语句:

    CREATE TABLE `institution_product_course` (
      `product_id` bigint(20) DEFAULT NULL COMMENT '商品id',
      `inst_id` bigint(20) DEFAULT NULL COMMENT '机构ID',
      `course_id` bigint(20) DEFAULT NULL COMMENT '课程id',
      `gmt_create` datetime DEFAULT NULL,
      `gmt_modify` datetime DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品课程关联表'
    

    TIDB上的建表语句:


    image.png

    原因:
    rds 上的表没有主键的话,会创建一个隐藏的 ID,syncer目前还不支持忽略隐藏 ID

    相关文章

      网友评论

          本文标题:Syncer数据同步

          本文链接:https://www.haomeiwen.com/subject/doibpftx.html