检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
异构数据库迁移至GaussDB分布式后select查询无order by数据结果集不一致 问题现象 图1 查询SQL中无order by 问题原因 GaussDB 分布式数据中,数据是按照分布键均匀存储在各DN节点上,select查询无order by时,数据随机从DN节点上读取,因此数据结果无法保证一致。
GaussDB中没有Schema名称的对象语句验证失败,该如何设置搜索路径? 在GaussDB目标库中执行以下示例后,显示表“aa”不存在。 create schema sch1; create table sch1.aa(col int); select * from aa;
Oracle为源库迁移至GaussDB后,目标库GaussDB index总数与源库Oracle查询数量不一致。 问题原因 UGO 采集时将主键和唯一约束以及系统生成的索引过滤掉 ,导致迁移后源库和目标库index数量不同。 解决办法 连接上Oracle数据库执行以下SQL语句查询index数量。
评估时选择并确认的 GaussDB 兼容模式一致。 创建 Oracle 兼容模式数据库 UGO 对于 Oracle、PostgreSQL 和 SQL Server 迁移到 GaussDB 的自动转换方案均基于 GaussDB 的 Oracle兼容模式设计,在进行这些链路的迁移时,请参照以下步骤创建
目标库为GaussDB时,会进行GaussDB兼容模式的检查。不同源数据库适配程度最高的兼容模式有所不同,如果目标数据库使用的兼容模式与推荐使用的不一致,则将提示风险。GaussDB兼容模式设置,请参考表1。 表1 兼容模式对应情况说明 源数据库 GaussDB兼容模式 MySQL、GoldenDB
对象校正 显示Schema名称、对象名称、对象类型、转换状态和迁移状态等信息。 迁移对象列表支持按“对象类型”、“Schema”、“转换状态”、“迁移状态”、“对象名称”、“SQL内容包含”、“SQL内容不包含”、“转换错误包含”“迁移错误包含”筛选。其中“对象名称”支持模糊查询;“S
对象迁移”。 当没有迁移项目时,页面默认显示功能简介和流程引导。当已有迁移项目时,页面默认关闭显示服务简介和流程引导,可手动单击进行显示。 对象迁移页面显示已有项目基础信息,包括项目名称/ID、评估项目名称、项目状态、目标数据库类型、创建日期和操作。可直接对ID进行复制。 若项目较多,可
单击左侧导航栏“SQL审核 > 规则管理”,默认进入规则模板页面。 选定待复制的已有模板,单击“操作 > 复制”,完成基本信息的填写。 其中模板名称唯一且不能为空。基线模板即为选定的待复制模板。 图1 复制模板 基本信息填写完成后,单击“创建”。已创建模板显示在下方列表中。 父主题: 规则管理
管理员admin用户可编辑和删除其他用户所创建的模板。 图1 基于模板创建配置模板 表1 创建配置模板参数说明 参数名称 说明 模板名称 在转换配置模板列表中显示的名称。 长度范围为5到50个字符,只允许包含英文字母、数字、下划线、中划线,不区分大小写且必须以字母开头、数字或字母结束的名称。 源数据库类型
单击左侧导航栏“转换配置管理”,进入转换配置管理页面。 显示用户已创建的自定义转换配置模板列表。 可通过模板名称、源数据库类型、目标数据库类型以及创建者进行搜索查询,其中模板名称和创建者支持模糊查询。 图1 转换配置模板列表 父主题: 转换配置管理
迁移验证报告:该报告简要介绍了迁移和验证对象的状态。 迁移验证错误报告:该报告介绍了对象迁移失败的详情,包括每个对象的状态、迁移语句和错误信息。 匿名化迁移验证错误报告:该报告介绍了对象迁移失败的详情,包括每个对象的状态、迁移语句、错误信息,但源库SQL语句和迁移后的SQL语句均以匿名的形式呈现。
xc_node_id,tableoid在GaussDB中已存在。 异构数据库迁移至GaussDB分布式后select查询无order by数据结果集不一致
图1 创建数据源 表1 创建数据源参数说明 参数名称 示例 说明 名称 app_db_01 在数据源管理列表中显示的名称。 由字母、数字、_、-组成,长度是5-50个字符,不区分大小写且必须以字母开头、数字或字母结束的唯一的项目名称。 数据库类型 GaussDB 下拉选择待创建的
选定待查看的规则模板,单击“操作 > 查看详情”。 系统模板:系统自带模板,显示基础信息和启动规则。 仅允许查看各规则详情,包括规则名称、说明、适用数据库以及审核对象类型等,但不允许修改。可单击“上一条”或“下一条”切换查看。 自定义模板:显示基础信息和启动规则,所有用户均可对同一模板进行新增规则、修改或删除已有规则。
由于PostgreSQL数据库中并未公开获取所有对象类型定义DDL的方法,因此部分对象的DDL将采用查询元数据拼接的方式获取。这可能导致采集的DDL信息和原始DDL不一致,甚至缺少信息的情况。 如果采集的DDL无法满足您的使用要求,您可以使用pg_dump或者第三方数据库客户端工具获取对象DDL,然后通过SQL语句转换进行SQL转换。
源数据库分析页面功能说明 功能名称 说明 数据库基本信息统计 显示项目名称、源数据库类型、数据库版本、数据库名称、实例数量、数据库内存等基本信息。 说明: GoldenDB为源库不展示数据库配置和实例数量。 MySQL和GoldenDB为源库不展示数据库名称。 数据库对象统计 显示数
在下拉框中选择查询条件。 其中,筛选类型选择“按事件名称”时,还需选择某个具体的事件名称。 选择“按资源ID”时,还需选择或者手动输入某个具体的资源ID。 选择“按资源名称”时,还需选择或手动输入某个具体的资源名称。 操作用户:在下拉框中选择某一具体的操作用户,此操作用户指用户级别,而非租户级别。
说明 任务名称 db_audit_01 创建审核任务时的名称,必填。 由字母、数字、_、-组成,长度为5-50个字符,不区分大小写且必须以字母开头,数字或者字母结束的唯一的任务名称。 数据库类型 GaussDB 下拉选择数据库类型。当前仅支持GaussDB数据库。必选。 数据源信息 app_db_01
下拉选择数据源中的schema名称。非必选且仅支持GaussDB和PostgreSQL数据库。 SQL语句中有schema名称,使用SQL语句中的schema。 SQL语句中没有schema名称,使用选择的schema。 SQL语句中没有schema名称,并且没有选择schema,默认使用public。
长事务的场景下,源库和目标库 GaussDB 得到的时间不一致。因此在 UGO 转换后,如果转换后的语句中存在上述函数,则用户需要自行分析上述函数是否存在长事务中并确认影响,如有影响需手工修改保证最终的准确性。 表1 与事务相关的时间函数说明 序号 函数名称 1 CURRENT_DATE