OMS结构迁移,A外键关联B B外键关联C C外键关联A,这种为什么结构迁移能迁移成功,单独执行create table都是失败的

【 使用环境 】 测试环境
【 OB or 其他组件 】OMS社区版
【 使用版本 】
【问题描述】OMS结构迁移,A外键关联B B外键关联C C外键关联A,这种为什么OMS的结构迁移能迁移成功,单独执行create table都是失败的
【复现路径】

可以查下sys租户的__all_virtual_ddl_operation 表,看看这几个外键是什么创建上的,估计是OMS在这里有优化,先创建的表在补全的外键约束 :face_with_peeking_eye:

2 个赞

学习一下

1 个赞

查了之后看到的是一个带外键的create table

当时你是怎么创建的呢?是和查询的一样的么?

学习打卡一下

了解一下

大概率是后补的,可以看看create_time和last_ddl_time是不是有差异

三张循环以来的表都是这样?

当时是先建的表,后补的外键

__all_virtual_ddl_operation 你查看一下这个信息 看看oms是那个时间怎么操作的 对比一下create_time和last_ddl_time是否有差异

是不是关闭了外键检查,手动执行这几个建表sql能成功吗

源端目的端是什么类型,可以发一下这三个表的建表sql吗。
目的端如果是ob,麻烦发一下这几个sql的结果

  1. SHOW VARIABLES LIKE ‘foreign_key_checks’;
  2. SHOW VARIABLES LIKE ‘%sql_mode%’;