欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

达梦数据库迁移设计_ORACLE

程序员文章站 2022-06-03 11:51:20
...

达梦数据库迁移设计_ORACLE

一、前言

	随着国际关系日益紧张,信息技术的快速发展,以及近年来去IOE的浪潮中,达梦数据库作为国产数据库的领军者,在40年来不断努力下,已完全具备非常成熟的替“O”能力。
	达梦数据库对ORACLE兼容方面做了大量工作,在语法、接口、存储等方面都与ORACLE保持高度兼容,这让ORACLE的移植就变的很简单。

二、迁移步骤

	1、确定需要迁移的信息系统及数据库信息
	2、使用达梦数据迁移工具DTS对源数据库对象及数据进行迁移
	3、对出现的部分问题进行解决(达梦数据库具有95%以上的兼容性,几乎不会出现问题)
	4、对迁移后的结果进行校验
	5、针对应用系统做定向优化

三、迁移过程

	1、确定需要迁移的信息系统及数据库信息
		1)信息系统内容确定:操作系统类型、使用数据库类型、开发语言、驱动类型
		2)数据库内容确定:原oracle数据库基础信息(页大小、簇大小、编码格式等)、数据库对象、数据库数据量等
		--统计页大小
		select name,value from v$parameter where name ='db_block_size'; 
		select * from v$nls_parameters a where a.PARAMETER='NLS_CHARACTERSET';
		--查询用户下数据库对象和数目
		select object_type,count(*) from all_objects where owner='DMTEST' group by object_type;
	2、使用达梦数据迁移工具DTS对源数据库对象及数据进行迁移
		1)迁移环境准备
			a.选择适当的达梦数据库集群或单机版本,适配原有的oracle集群方式,确保后续使用的运行效率。
			b.选择合适的初始化参数,包括页大小、簇大小等。
			c.合理配置数据库参数,主要是兼容参数、并发、BUFFER等。
			d.分配用户及表空间。
		2)数据库对象及数据迁移
			使用达梦数据库配套软件数据迁移工具,对数据库对象及数据进行迁移,迁移过程中,应对不同的数据对象分类迁移,要有合理的迁移顺序。
			大致顺序:序列、表、视图、函数、过程等
			注意事项:数据量大的表单独迁移、大字段的表需调整批量行数,避免迁移工具内存溢出。
	3、对出现的部分问题进行解决(达梦数据库具有95%以上的兼容性,几乎不会出现问题)
			1)序列最大值超出范围:达梦最大的序列值9223372036854775807,如超出范围请修改到此范围内。
			2)字符串截断:达梦数据库的字符集会影响汉字占用的字节数,Unicode会占用3字节。
			3)违反唯一约束:数据迁移目的表中存在数据,需清空目的表,或者在迁移工具中选择“删除后拷贝记录”选项。
			4)违反引用约束:迁移过程中,外键在表迁移后再进行,避免无法找到外键关联表,出现违反引用约束错误。
	4、对迁移后的结果进行校验
			1)统计达梦数据库基础信息
				--统计页大小
				select page; 
				--通过编码格式
				select unicode; 
				--统计大小写敏感参数 
				select case_sensitive;
			2)统计数据库对象和数据量
				--查询用户下数据库对象和数目
				select object_type,count(*) from all_objects where owner='DMTEST' group by object_type;
			3)比对物理表数据量
				--查询各个表的数据量
				select count(*) from DMTEST.XXX;
	5、针对应用系统做定向优化
			1)更新统计信息
				核对信息完毕后,应进行一次全库的统计信息更新。
			2)系统进行测试
				由开发厂商对系统进行功能测试。数据库开启SQL日志,对系统进行全面监测。
			3)定向优化
				监测SQL日志,并对慢SQL进行优化。