达梦 8 —— DTS 静态数据迁移工具

DTS 是一款免费的数据迁移工具,在数据库安装时自带有图形化的版本,此工具主要适用于静态数据迁移场景。本文主要介绍内容如下:

目录

1 产品特性

2 迁移流程概览

3 Oracle 19c 迁移到 DM8

3.1 需求分析

3.2 数据库调研

3.2.1 Oracle源端调研

3.2.2 目标端调研

3.3 迁移评估

3.4 制定迁移计划

3.5 迁移准备

3.6 迁移数据库

3.7 数据验证

3.7.1 统计源端对象及数据

3.7.2 统计源端各对象的数量

3.7.3 统计目的端对象及数据

3.7.4 统计目的端对象的数量

3.8 收尾工作


1 产品特性

(1)支持视图、存储过程/函数、包、类、同义词、触发器等对象迁移。

(2)支持数据类型的自动映射,编码转换。

(3)支持根据条件自定义迁移部分数据。

(4)向导式迁移步骤,上手简单。

(5)支持 web 端操作、监控。

(7)支持迁移评估。

典型场景

(1)支持全量静态数据迁移,无法实现数据增量迁移方式;

(2)为保障迁移全量数据的一致性,需要充足的业务系统停机窗口;

(3)迁移过程中,源端数据库不能有数据变更以及对象变更。

2 迁移流程概览

3 Oracle 19c 迁移到 DM8

3.1 需求分析

需求分析阶段主要是根据实际的需求场景来获得数据流向、停机窗口、同步需求及数据处理等不同的需求。常见的需求场景,如容灾备份、应用改造/替代、数据库版本升级/回退、数据库替代、业务分流等。

此次迁移是将CentOS 7.6平台中的Oracle 19c数据库中的scott用户下的所有对象移植到中标麒麟 V10平台的达梦数据库 DM8 中。

3.2 数据库调研

为了确保在满足需求的前提下稳定完成迁移,需要对源端和目的端数据库及服务器、业务系统进行调研。主要需要调研迁移或同步的工具及版本、驱动版本、操作方式、对象个数、对象大小、数据量等。

3.2.1 Oracle源端调研

迁移对象统计:

select a.username, (select count(1) from dba_tables b where b.owner = a.username) table_num,

        ( SELECT COUNT(1) FROM DBA_INDEXES I WHERE UNIQUENESS = 'UNIQUE' AND OWNER =A.USERNAME OR INDEX_NAME NOT LIKE 'SYS_%' AND OWNER =A.USERNAME) index_num,

        (select count(distinct c.table_name)

           from dba_tab_partitions c

          where c.table_owner = a.username) part_num,

        (select count(1)

           from dba_tab_cols d

          where d.OWNER = a.username

            and d.DATA_TYPE like '%LOB%')  lob_num,

        (select sum(e.bytes) / 1024 / 1024 / 1024

           from dba_extents e

          where exists (select 1

                   from dba_lobs f

                  where f.owner = a.username

                    and f.segment_name = e.segment_name)) lob_space,

        (select count(1) from dba_views g where g.OWNER = a.username) view_num,

        (select count(1) from dba_triggers h where h.owner = a.username) trig_num,

        (select count(DISTINCT I.NAME)

           from DBA_SOURCE I

          WHERE I.OWNER = A.username

            AND I.TYPE = 'FUNCTION') fun_num,

        (select COUNT(1)

           FROM DBA_SEQUENCES j

          WHERE j.sequence_owner = A.username) seq_num,

        (select count(1) from dba_synonyms where owner= A.username) syn,

        (select COUNT(1) FROM DBA_MVIEWS K WHERE K.owner = A.username) mv_num,

        (select count(DISTINCT l.NAME)

           from DBA_SOURCE L

          WHERE L.OWNER = A.username

            AND L.TYPE = 'PROCEDURE') stor_num,

        (select COUNT(1) FROM DBA_DB_LINKS M WHERE M.owner = A.username) dblink_num,

        (select max(n.DATA_LENGTH)

           from dba_tab_cols n

          where n.OWNER = a.username) max_length,

        (select SUM(O.DATA_LENGTH)

           from dba_tab_cols o

          where o.OWNER = a.username

            and o.DATA_TYPE not like '%LOB%') max_row_wide

   from dba_users a where username in ('SCOTT');

统计数据量:

SYS@prod> select distinct segment_type,sum(BYTES)/1024 /1024 /1024 , COUNT(*) FROM DBA_SEGMENTS where owner = '

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值