一般性限制、对象迁移限制、在线迁移限制

一般性限制

  • 根据 mysql-replication 的要求,Python 3 仅支持 3.5~3.7。
  • MySQL 列的 AUTO_INCREMENT 属性,在 openGauss 侧将通过序列 (serial) 实现。
  • detach 复制副本进程将重置 openGauss 中的序列 (serial),以使数据库独立工作。外键约束也会在 detach 过程中被创建和验证。
  • 视图、自定义函数、存储过程、触发器支持离线迁移,不支持在线迁移。
  • 自定义 type 不支持离线和在线迁移。
  • 对于分区表,openGauss 无法支持的分区表类型暂不会被迁移。分区表迁移规则见分区表迁移规则
  • 配置文件中,schema mappings 中指定的 openGauss 侧的目的 schema 名称不能是 sch_chameleon。sch_chameleon 是工具将自行创建用于辅助复制的 schema 名称。
  • 列默认值问题。由于列的默认值可以是表达式,部分 MySQL 的表达式若 openGauss 不支持的话,离线迁移过程中会报错,导致迁移失败。可通过关闭迁移默认值的方式临时规避该问题。
  • MySQL 的 unsigned 数据类型迁移时,会自动去掉 unsigned 属性,如 MySQL 的 unsigned int 迁移到 openGauss 时将变成 int,若 MySQL 中存储的数据超过了 int 的取值范围,迁移过程中会出错。
  • 工具支持的 MySQL 版本为 5.5+,openGauss 的版本为 2.1.0+。
  • 对于 float、double 等浮点数,迁移过程中可能由于精度误差,造成 MySQL 和 openGauss 中的值不完全一样。
  • 若想迁移到 openGauss 的表名和视图名的大小写与 MySQL 一致,MySQL 的系统变量 lower_case_table_names 的值应设置为 0。存在大小写的触发器名、自定义函数名、存储过程名迁移前后一致。
  • 对于索引或约束中的表达式,如索引前缀表达式 id (5) 的写法目前暂会迁移为 col_name。
  • 迁移后的索引或者约束如 index_name 会改写为 tbl_name_index_name 的带有表名前缀的格式。
  • 由于 openGauss 内核中哈希分区表不支持切割分区,不支持合成分区,不支持添加和删除分区。列表分区表不支持切割分区,不支持合成分区,故该工具在 HASH/LIST 分区暂不支持 COALESCE 和 REORGANIZE,在 HASH 分区不支持 ADD/DROP PARTITION。
  • 由于目前 openGauss 内核的限制,二级分区的分区表可以正常执行 ALTER PARTITION 中的 ADD/DROP/TRUNCATE 功能,COALESCE/REORGANIZE/EXCHANGE 暂不支持。
  • 对于 HASH 分区及 KEY 分区表在线迁移,由于 MySQL 和 openGauss 中 hash 分区内核实现不同,迁移后 openGauss 数据存放分区与 MySQL 中数据存放的分区存在差异。
  • 对于二级分区表,openGauss 不支持一级和二级分区采用相同的键值。

2. 对象迁移限制

  • chameleon 支持复制数据库对象是基于 openGauss-tools-sql-translator 仓库进行数据库对象的翻译,可前往该仓库了解数据库对象的翻译情况。
  • 目前,要迁移的数据库对象体内若存在 commit 或 rollback 无法解析翻译,将迁移失败。
  • 目前 MySQL 存储过程中的 NO SQL、READS SQL DATA、MODIFIES SQL 字段和自定义函数中的 CONTAINS SQL、NO SQL、READS SQL DATA、MODIFIES SQL DATA、SECURITY 字段无法解析,无法将这些 openGauss 不支持的参数屏蔽且 warning 提示信息。而是直接报错,迁移失败。

3. 在线迁移限制

在线 DDL 仅支持部分语句,主要包括 CREATE/DROP/RENAME/TRUNCATE TABLE, ALTER TABLE DROP/ADD/CHANGE/MODIFY, DROP PRIMARY KEY, CREATE/DROP INDEX, ALTER TABLE ADD FOREIGN KEY/UNIQUE INDEX/INDEX, ALTER TABLE DROP FOREIGN KEY/INDEX/CONSTRAINT, ALTER TABLE ADD/DROP/TRUNCATE/COALESCE/EXCHANGE/REORGANIZE PARTITION。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值