为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:linux
【CPU】:x86
【问题描述】*:
现有需求需要迁移ranger的元数据,从mysql迁移至达梦数据库,使用达梦迁移工具迁移,发现迁移后表结构存在变动,查看ranger源码也发现针对不同数据库做了特殊处理(特别是序列、函数和索引),现想到一个方式将ranger数据表在达梦数据库创建好,然后在进行数据同步,只同步数据不同步表结构,然而,迁移工具同步时好像不能解决存在外键的表,直接报错了,是否有其他配置可实现功能
可以先禁掉外键,导入数据后,在开启
select
TABLE_NAME ,
COLUMN_NAME,
CONSTRAINT_NAME,
OWNER,
--'alter table '||OWNER||'.'||TABLE_NAME ||' DISABLE CONSTRAINT '|| CONSTRAINT_NAME
'alter table '||OWNER||'.'||TABLE_NAME ||' ENABLE CONSTRAINT '|| CONSTRAINT_NAME
from
SYSCONS a ,
SYSOBJECTS b,
ALL_CONS_COLUMNS c
where
a.id =b.id
and a.TYPE$ ='F' --'F'代表外键,'P'代表主键,'U'唯一索引
and b.name =c.CONSTRAINT_NAME
and c.owner not in ('SYS')
意思是只迁移表结构,不迁移外键等对象吗
可以迁移的时候,选择表那一步,右下角有个转换,把约束、键等对象去除
选择应用到其他,批量只创建表