更新时间:2026-07-14 GMT+08:00
分享

步骤二:语法转换

操作场景

迁移项目创建完成后,进行对象迁移时,在“语法转换”页面,选择期望转换迁移的对象内容,进行迁移。根据业务需求,可以设置某个对象的是否转换,也可以批量设置某一类型是否转换。

约束限制

  • 当源库为GoldenDB、MySQL(版本在8.0以下)时,不支持ROLE对象的创建,所以UGO不对ROLE对象进行采集且展示ROLE对象的数量为0。
  • 如果要迁移数据,建议暂时跳过触发器迁移,否则迁移过程触发器可能改变数据,数据迁移完成后再单独迁移触发器。
  • 对象状态为“异常”的对象,表示源库中该对象本身存在异常,“是否转换”自动显示为“否”,无法转换。

前提条件

  • “项目状态”为“就绪”且目标库信息正确、测试连接成功。
  • 目标数据库连接的用户需要具有Schema、表、程序、索引、用户、函数、视图等对象的创建、删除及更改权限。

启动语法转换

  1. 登录UGO控制台。
  2. 单击左侧导航栏结构迁移 > 对象迁移,显示迁移项目列表。
  3. 单击待迁移项目的“操作 > 迁移 > 语法转换”,进入语法转换页面。

    图1 转换任务

  4. 单击“启动”,进行语法的转换。
  5. 转换完成之前,可以单击“暂停”,流程将被暂停。单击“恢复”,将继续进行转换流程。
  6. 转换完成后,可单击转换报告进入“最近一次转换报告”页面,单击“下载报告”,选择所需报告单击“下载”,下载至本地供用户分析。

    • 转换错误及风险报告:该报告介绍了无法等价转换为目标库语法的源库对象详情,以及介绍了基于用户所选的配置项,冒一定风险转换为目标库语法的源库对象,但转换后存在一定的功能差异。
    • 匿名化转换错误及风险报告:该报告通过匿名方式介绍了无法等价转换为目标库语法的源库对象,以及介绍了基于用户所选的配置项,冒一定风险转换为目标库语法的源库对象,但转换后存在一定的功能差异。

  7. 转换完成后,可单击转换报告进入“最近一次转换报告”页面,单击“转换历史”页面,可查看转换历史详情信息,单击操作>详情,进入对象类型转换详情页面,选择具体对象类型,再次单击操作>详情,可按“schema”查看具体对象转换情况,也可按“转换状态”查看具体对象转换情况,也可按“对象名称搜索”查看具体对象的转换情况,参见查看语法转换历史详情
  8. (可选)语法转换迁移完成,若有转换失败对象,可进行单独语法转换修改并直接迁移,具体参考4

配置策略

  1. 单击左侧导航栏“结构迁移 > 对象迁移”,显示迁移项目列表。

    单击待迁移项目的“操作 > 迁移>语法转换”,进入“语法转换”页面,单击“配置策略”,弹出“配置策略”页面。

    图2 配置策略
    • 覆盖手工修改结果:
      • 不勾选:默认“不勾选”“覆盖手工修改结果”,再次启动转换,不会覆盖手工修改的SQL语句。
      • 勾选:若“勾选”“覆盖手工修改结果”,再次启动转换,会覆盖手工修改的SQL语句,请谨慎操作,防止手工修改SQL被再次重新转换结果覆盖掉。
    • 选择转换模式:
      • 按对象类型转换,可选择需要迁移的具体对象类型。
      • 导入转换对象,下载模板,将待转换对象的信息填入Excel文件,上传Excel文件。详情可参考导入转换对象

导入转换对象

  1. 单击左侧导航栏“结构迁移 > 对象迁移”,显示迁移项目列表。
  2. 单击待迁移项目的“操作 > 迁移>语法转换”,进入“语法转换”页面。

    图3 对象列表

  3. 单击“配置策略”按钮,弹出“配置策略”窗口,单击“导入转换对象”

    图4 导入转换对象
    • 单击“下载Excel文件模板”,下载对应模板。
      • Excel表格第一列为Schema,第二列为对象类型,第三列为对象名称,三列唯一指定一个对象(内容区分大小写),都不可为空。
    • 通过上传Excel,批量指定需要转换的对象。
      • 表格最大不超过30M,行数最多为65535行(不包括表头),若内容有错误,可通过 上传结果的“查看错误”查看错误原因,修改后可直接再次上传。
      • 表格上传成功后,对象的“是否转换”自动更新。
      • “导入转换对象”上传Excel文件时,识别列表中符合schema、对象类型及对象名称的所有对象,均标记为“正常”状态。

表对象的分布映射

若源库类型为 Oracle、MySQL,目标库数据类型为 GaussDB 分布式时,可设置表对象的分布映射。

  • 复制表:支持选中一个或多个表对象,单击列表上方的“复制表”,将选中的表对象批量设置为复制表。对象名称后展示分布映射为复制表。
  • 分布映射:单击具体表对象“对象类型 > 分布映射”,支持将单个表对象的分布映射修改为复制或按指定的列哈希分布。对象名称后展示分布映射为复制表或哈希(列名)。
  • 删除分布映射:单击具体表对象“对象类型 > 分布映射 > 删除分布映射”,取消指定表对象的分布映射关系。对应对象名称后展示的分布映射将同步删除。

    选择哈希分布映射,将在下拉框中展示所有符合 GaussDB 分布列数据类型约束的字段。

查看语法转换历史详情

  1. 单击左侧导航栏结构迁移 > 对象迁移,显示迁移项目列表。
  2. 单击待迁移项目的“操作 > 迁移”,进入迁移项目,选择“语法转换”页签,进入“转换任务”页面。
  3. 单击“转换报告”跳转到转换报告页面,单击“转换历史”页面。

    按倒序显示已转换项目的详细信息,包括对象类型、总数、跳过、转换成功、转换失败、忽略、手工修改、剩余量、转换状态,开始时间、结束时间等信息。
    图5 转换历史

  4. 单击“详情”,显示对象类型、转换成功、转换失败、跳过、忽略、手工修改等信息。可以查看各对象类型的详细信息。

    图6 对象类型转换详细信息

  5. 单击对象类型后的“详情”,显示Schema、对象类型、对象名称、转换状态等信息。可以依据具体对象名称搜索,也可以查看各Schema的详细信息,也可以查看各个对象的转换状态。

    图7 schema转换详细信息

  6. 单击对象后的“详情”,显示详细代码信息。

    图8 对象详细信息

相关文档