文章目录
一、环境说明
二、迁移前准备
三、数据迁移
一、环境说明
二、迁移前准备
create tablespace "TEST" datafile '/dmdata/data/DAMENG/TEST.DBF' size 50 autoextend on next 10;
create user "TEST" identified by "12345678" default tablespace "TEST";
grant dba to "TEST";
0:不兼容,1: 兼容 SQL92 标准,2:部分兼容 ORACLE,3: 部分兼容 MS SQL SERVER,4:部分兼容 MYSQL, 5:兼容 DM6,6:部分兼容Teradata。 | |
ALTER SYSTEM SET 'COMPATIBLE_MODE'=2 SPFILE;
ALTER SYSTEM SET 'CALC_AS_DECIMAL'=1 SPFILE;
# 查看修改后的参数值
select para_name,para_value from v$dm_ini where para_name = 'CALC_AS_DECIMAL' OR para_name = 'COMPATIBLE_MODE';
三、数据迁移
迁移对象方式及迁移策略中勾选“保持对象名大小写”和“使用默认数据类型映射关系”
勾选源端待迁移的模式,由于在 DM 数据库准备阶段已经提前将 TEST 模式创建好了,这里就不勾选“创建模式”,其他保留。
这里可以看到源端待迁移模式下所有的数据对象,用户可以自定义选择 Oracle 需要迁移的具体对象。
用户可以通过点击上图中右上方的“分析源对象”统计选中的源端待迁移对象。用户可以通过该功能对源端迁移对象进行统计分析,包括“源对象统计”、“源表统计”、“源表详细”。
b. 强制聚集索引:即使源表的主键为非聚集主键,创建目的表时也会被转换为聚集主键。
c. 强制非聚集索引:即使源表的主键为聚集主键,创建目的表时也会被转换为非聚集主键。
d. 启用标志列插入:如果表上有标志列,则迁移数据时会强制向标志列插入值,以保证源和目的数据完全一致
f. 拷贝记录:如果目的表已存在,直接拷贝记录,不需要创建表。
g. 删除后拷贝记录:迁移过程中先删除已存在的目的表,再重新创建新目的表。
h. 源一次读取行数:设置从数据源中读取数据时每次读取数据的行数,该参数决定内存中缓存结果集的大小,对于数据量很大的数据源,设置该参数,可以控制内存的使用。
i. 目的一次提交行数:设置向目的数据库中每次写入数据的行数。当数据量比较大时,减小该参数的值可以减少内存的使用。但会影响迁移的速度。
j. 缓存批数:设置缓存队列的长度。调整该参数可以调整迁移过程中内存的使用。
注意:如果数据量较大,可以选着先迁移表结构定义相关内容,再迁移数据,最后迁移索引。
完成映射关系的配置后,需要勾选“应用当前选择项到其他同类对象”,选择该选项后,将弹出对话框,选择其他同类对象,将此策略应用到相同对象上。如果不勾选“应用当前选择项到其他同类对象”,那么配置的迁移策略只会对当前选中的表生效。
检查迁移任务,确认迁移对象是否正确。然后点击完成,开始迁移。
到这里就完成了Oracle到DM的数据迁移,更多相关内容请移步达梦数据库官方地址: