数据库和应用迁移 UGO-MySQL to GaussDB 主备版(M兼容)-8.100企业版配置项使用说明

时间:2024-05-29 09:22:21

MySQL to GaussDB 主备版(M兼容)-8.100企业版配置项使用说明

问题描述

配置建议

建议值

GaussDB 不支持某些MySQL的系统权限,系统权限授予失败。

建议配置“系统权限”解决该类问题。

注释整个SQL脚本。

影响:此配置将注释整个SQL,不会授予任何系统权限。

MySQL中索引名和约束名以表为单位,不同表的约束和索引可以同名,而GaussDB以schema为单位,保留原始名称迁移后重名的索引和约束会产生冲突。

建议配置“索引/约束名称防止冲突映射策略”解决该类问题。

将表名与索引/约束名称拼接防止命名冲突,当拼接后的名称超过63字节时使用SHA-1进行散列。

影响:解决命名冲突问题,但是当名称较长时丧失名称的可读性,且在后续的DROP、RENAME等维护过程中,也需要使用UGO转换SQL才能正确执行。

GaussDB不支持ZEROFILL关键字。

建议配置“ZEROFILL关键字转换”。

注释ZEROFILL关键字,且如果原来没有UNSIGNED则添加UNSIGNED关键字。

影响:在MySQL中ZEROFILL一般和UNSIGNED一起配合使用,即使只使用ZEROFILL也表示是无符号类型。此配置将注释掉ZEROFILL关键字,并添加UNSIGNED关键字,需要注意显示宽度不影响数据存储但可能影响业务使用。

GaussDB不支持视图的SECURITY子句。

建议配置 “SQL SECURITY子句” 解决该类问题。

迁移SECURITY子句。

GaussDB不支持数据库对象中使用Definer。

建议配置“对象定义者”解决该类问题。

如果创建对象时指定用户,将转换为ALTER OWNER。

影响:DEFINER将迁移成ALTER OWNER语句,需要保证目标库中相应的对象存储,否则该对象将迁移失败。

GaussDB不支持视图的CHECK OPTION子句。

建议配置 “视图检查选项” 解决该类问题。

迁移CHECK OPTION。

GaussDB分区表不支持多个分区键。

建议配置“分区表多列分区键”解决该类问题。

使用主键或唯一键的第一列作为分区键。

GaussDB不支持某些MySQL的字符集。

建议配置 “字符集” 解决该类问题。

如果目标库不支持CHARSET,注释CHARSET。

GaussDB不支持某些MySQL的排序规则。

建议配置 “排序规则” 解决该类问题。

如果目标库不支持COLLATE,注释COLLATE。

GaussDB不支持set数据类型。

建议配置 “set数据类型转换” 解决该类问题。

转为VARCHAR。

GaussDB不支持enum数据类型。

建议配置 “enum数据类型转换” 解决该类问题。

转为VARCHAR。

support.huaweicloud.com/usermanual-ugo/zh-cn_topic_0000001933493173.html