本文列出了MySQL分析实例在数据同步过程中遇到的常见问题以及解决方法。

  • 数据同步过程中如果源实例RDS MySQL中的数据库名、表名或者列名中含有划线(-)会报错吗?

    由于AnalyticDB for MySQL中不允许数据库名、表名或者列名中含有划线(-),为保证数据同步成功,系统会将中划线(-)映射为下划线(_)。

    如果在数据同步过程中遇到其他因数据库名、表名或者列名造成的同步失败(例如表名中含有空格、中文等),可以向AnalyticDB for MySQL提工单解决该问题。

    说明 其他AnalyticDB for MySQL使用限制请参见使用限制
  • 数据同步过程中,是否支持修改源表中的字段类型?
    数据同步过程中,可以修改源表中的字段类型,目前仅支持将Tinyint > Smallint > Int > Bigint、Float > Double。
    说明 可以将Tinyint更改为Int,即只能将存储字节数小的数据类型更改为存储字节数大的数据类型,或者将小精度数据类型更改为大精度数据类型。
  • 如何排查MySQL分析实例中的数据延迟问题?
    • DTS同步链路规格默认为medium模式,源库的数据写入量过大时,若想达到规格同步性能上线,需要升级实例配置
    • 无主键表的主键选择可能会导致热点行更新,而热点行更新速度很慢,可以向AnalyticDB for MySQL提工单解决该问题。
    • 当MySQL分析实例的写入性能已达到瓶颈,需要升级MySQL分析实例的规格。
  • 如何排查MySQL分析实例中的数据同步报错问题?
    1. 登录AnalyticDB 控制台
    2. 在页面左上角,选择集群所在地域。
    3. 在集群概览页,单击集群列表
    4. 3.0集群列表中单击目标集群ID,在集群信息页面的同步信息模块查看报错信息,然后根据DTS同步数据常见问题进行错误处理,或者向AnalyticDB for MySQL提工单解决该问题。
  • 若源库中存在无主键表,同步过程会报错吗?

    针对源库中的无主键表,同步时会把表中第一列作为主键同步到MySQL分析实例中。

    说明 AnalyticDB for MySQL要求只有主键表才可以进行INSERT和UPDATE操作。
  • 若源库中存在MySQL分析实例不支持的数据类型,同步过程会报错吗?

    若源库中存在MySQL分析实例不支持的数据类型(例如地理位置数据等类型),MySQL分析实例在进行结构初始化时会丢弃掉不支持数据类型的列,AnalyticDB for MySQL常见数据类型请参见数据类型