tencent cloud

文档反馈

同步高级对象

最后更新时间:2023-03-03 15:00:31

    操作场景

    DTS 支持同步的高级对象有函数、存储过程。高级对象的同步是一次性动作,仅支持同步在任务启动前源库中已有的高级对象,在任务启动后,源库新增的高级对象不会同步到目标库中。
    说明
    当前支持高级对象同步的场景为 MySQL、TDSQL-C MySQL、MariaDB、Percona 之间的数据同步。

    注意事项

    同步高级对象时,建议不要进行库表重命名操作,否则可能会导致高级对象同步失败。
    高级对象同步失败并不会影响整个同步任务,所以整个同步任务成功不能保证高级对象也同步成功,建议用户在同步任务完成后,自行在进度详情页查看高级对象是否同步成功。
    在同步存储过程和函数时,DTS 会检查源库中 DEFINER 对应的 user1( [DEFINER = user1])和同步账号 user2 是否一致,如果不一致,同步后 DTS 会修改 user1 在目标库中的 SQL SECURITY 属性,由 DEFINER 转换为 INVOKER( [INVOKER = user1]),同时设置目标库中 DEFINER 为同步账号 user2([DEFINER = 同步账号 user2])。
    对于跨版本的同步,如果源库中高级对象设置的 sql_mode,目标库不支持,高级对象同步到目标库后会将 sql_mode 改为 NO_AUTO_VALUE_ON_ZERO
    如果勾选的高级对象定义中存在'''(转义),会碰到 MySQL 自身限制,从而导致迁移任务失败,建议不要否选这类高级对象。

    操作步骤

    1. 数据同步任务设置同步选项及同步对象页面,设置高级对象功能。默认会勾选高级对象,如果不需要同步高级对象,可以取消勾选。
    
    
    2. 校验任务中会增加高级对象的检查项,具体请参考 高级对象检查
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持