没有合适的资源?快使用搜索试试~ 我知道了~
首页从Sqlserver移植到DM参考手册[csdn]
从Sqlserver迁移到DM数据库介绍文档: 第 1 章 概述 2 第 2 章 移植过程 2 2.1 待移植系统分析 2 2.1.1 统计SqlServer数据库基础信息 2 2.1.2 统计SQLServer数据中的对象以及表数据量 2 2.2 准备移植环境 3 2.2.1 DM移植环境 4 2.2.2 SqlServer移植环境 5 2.3 常规对象及数据迁移 6 2.3.1 指定迁移计划 6 2.3.2 表对象迁移 6 2.3.3 视图对象迁移 9 2.3.4 处理迁移过程中的错误 11 2.4 TSQL移植 20 2.4.1 导出待移植对象的脚本 20 2.4.2 运行脚本并处理错误 24 2.5 核对数据库移植结果 25 2.6 数据库移植完毕后的收尾工作 26 2.7 应用移植 28 2.7.1 JAVA接口 28 2.7.2 DOT NET接口 36 2.8 系统测试与优化 39 第 3 章 附录 39 3.1 DM7与Sqlserver2008对比 39 3.1.1 数据类型 40 3.1.2 常用函数 40 3.1.3 TSql与DM-Sql 43
资源详情
资源评论
资源推荐

文档资料 从 Sqlserver 移植到 DM 参考手册
1
目录
第 1 章 概述 ............................................................... 2
第 2 章 移植过程 ........................................................... 2
2.1 待移植系统分析 ......................................................... 2
2.1.1 统计 SqlServer 数据库基础信息 ....................................... 2
2.1.2 统计 SQLServer 数据中的对象以及表数据量 ............................. 2
2.2 准备移植环境 ........................................................... 3
2.2.1 DM 移植环境 .......................................................... 4
2.2.2 SqlServer 移植环境 ................................................... 5
2.3 常规对象及数据迁移 ..................................................... 6
2.3.1 指定迁移计划 ....................................................... 6
2.3.2 表对象迁移 ......................................................... 6
2.3.3 视图对象迁移 ....................................................... 9
2.3.4 处理迁移过程中的错误 .............................................. 11
2.4 TSQL 移植 ............................................................. 20
2.4.1 导出待移植对象的脚本 .............................................. 20
2.4.2 运行脚本并处理错误 ................................................ 24
2.5 核对数据库移植结果 .................................................... 25
2.6 数据库移植完毕后的收尾工作 ............................................ 26
2.7 应用移植 .............................................................. 28
2.7.1 JAVA 接口 ........................................................... 28
2.7.2 DOT NET 接口 ........................................................ 36
2.8 系统测试与优化 ........................................................ 39
第 3 章 附录 .............................................................. 39
3.1 DM7 与 Sqlserver2008 对比 .............................................. 39
3.1.1 数据类型 .......................................................... 40
3.1.2 常用函数 .......................................................... 40
3.1.3 TSql 与 DM-Sql ....................................................... 43

文档资料 从 Sqlserver 移植到 DM 参考手册
2
第 1 章 概述
随着国家对自主可控的日益重视,目前在党政机关、军队、大型央企等行业
和区域中面临越来越多的国产化。
DM 数据库和 SQLServer 结构存在差异,TSQL 语法也存在差异。DM 数据库针对
SQLServer 做了部分兼容性。但由于有根本性的差异,兼容度不高。从 SQLServer
迁移到 DM 数据库,DM 数据库提供了自动迁移工具,但在开发级别还需要人工干预
进行同步。
SQLServer 到 DM 的移植主要有以下几个方面的工作:
1. 分析待移植系统,确定移植对象。
2. 通过数据迁移工具 DTS 完成常规数据库对象及数据的迁移。
3. 通过人工完成 TSQL 的移植。
4. 移植完成后对移植的结果进行校验,确保移植的完整性和正确性。
5. 对应用系统进行移植、测试和优化。
第 2 章 移植过程
2.1 待移植系统分析
2.1.1 统计 SqlServer 数据库基础信息
--统计编码格式
SELECT COLLATIONPROPERTY('Chinese_PRC_Stroke_CI_AI_KS_WS', 'CodePage')
--936 简体中文 GBK
--950 繁体中文 BIG5
--437 美国/加拿大英语
--932 日文
--949 韩文
--866 俄文
--65001 unicode UFT-8
2.1.2 统计 SQLServer 数据中的对象以及表数据量
a. 根据指定用户统计用户下的各对象类型和数目

文档资料 从 Sqlserver 移植到 DM 参考手册
3
select type,COUNT(*) from sys.all_objects where schema_id=1 and
parent_object_id=0 and is_ms_shipped=0 group by type;
b. 统计指定用户下所有的对象,并记录到新的记录表中
create table sql_objects(obj_owner varchar(100),obj_name varchar(100),obj_type
varchar(50));
insert into sql_objects select DB_NAME(),name,type from sys.all_objects where
schema_id=1 AND type IN ('U','V','FN','P','TR');
select * from sql_objects;
c. 统计每个表的数据量到表数据记录表
create table sql_tables(tab_owner varchar(100),tab_name varchar(100),tab_count
int);
insert into sql_tables
select DB_NAME(),a.name, b.rows
from sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id
where (a.type = 'u') AND (b.indid IN (0, 1))
order by a.name,b.rows desc;
select * from sql_tables;
2.2 准备移植环境
本节讨论的内容是关于对移植环境的准备工作,鉴于移植工作的最终目的可
能不同,我们需要对目的做一下分类,分类之后,可以更好的明确我们的环境准
备工作的需求,从而使使移植的工作更加的高效;
(1)仅做移植兼容性测试。这里指的是用户或者开发商对与移植可能性和技
术工作量的一个评估和确认工作,也就是尝试性的移植,移植后可能并不会立刻
进行产品级的应用功能、性能、稳定性测试,在这中情况下,我们一般搭建最基
础的移植环境即可,用虚拟机和物理机服务器都可以进行,且对配置无特别要求,
满足基本运行条件即可;
(2)为替换 SQLServer 上线运行进行正式移植。在这种情况下,移植完成后,
会对应用进行产品级全访问的功能点测试、性能测试、压力测试以及稳定性测试
等标准流程的测试,在这种情况下搭建移植环境,一定要优先采用物理服务器搭
建,并且对于物理服务器的相关硬件配置要提出要求,提出要求的配置根据系统

文档资料 从 Sqlserver 移植到 DM 参考手册
4
数据量规模、性能要求、并发规模、可用性要求等基本情况向测试方提出建议,
因为要想移植后测试效果好,硬件的支撑是必不可少的,如果是在很低配置情况
下,又想得到很好的移植和测试效果,这本身就是不合理的。
对于服务器配置有要求,包括 CPU、内存、OS、磁盘(本地盘、阵列),架构
方面(单机、多机)包括采用的集群架构方式。
2.2.1 DM 移植环境
版本选择
达梦数据库内部会有定期的版本更新说明和版本发版通知,再进行项目移植的
之前,一定要先根据内部通报情况和自己所在技术团队的讨论,确定一个版本,尽
量以最新版本且无额外另行通知的版本,保证已经出现的问题,在即将移植的系统
中不再出现;
版本优先选择完整安装版本(无完整安装版本的平台例外),避免数据库客户
端和服务器端存在版本不匹配带来的额外工作量,达梦在不同平台的不同版本上,
安装包都会有差异,一定要采用严格匹配的原则,除非得到达梦原厂技术人员的允
许,尽量减少干扰性的问题出现。
初始化库
初始化库,关键的点在于对初始化参数的设置,本章节明确是从 SQLServer 移
植到 DM 数据库,所以具体的初始化参数建议如下:
(1)关于页大小 PAGE_SIZE。在 DM 数据库中,页大小可以为 4KB、8KB、16KB
或者 32KB,建议设置页大小为 8KB,一旦创建好了数据库,在该库的整个生命周期
内,页大小都不能够改变。除了每个字段的最大长度限制外,每条记录总长度不能
大于页面大小的一半。如果系统中存在或者以后可能存在含有较长的字符串类型的
表,建议该参数设置为 16 或者 32。页大小设置越大,最后数据文件的物理大小就
会越大,系统运行时,每次从磁盘调入内存的数据单位也就越大,所以此处要慎重。
(2)关于簇大小 EXTENT_SIZE。数据文件使用的簇大小,即每次分配新的段
空间时连续的页数,只能是 16 页或 32 页,缺省使用 16 页,使用默认值就可。
(3)关于大小写敏感 CASE_SENSITIVE。DM 为了兼容不同的数据库,在初始化
数据库的时候有一个参数字符串比较大小写敏感,用于确定数据库对象及数据是否

文档资料 从 Sqlserver 移植到 DM 参考手册
5
区分大小写,默认为区分,不可更改。建议 MYSQL 和 SQLSERVER 迁移过来的系统,
使用大小写不敏感以便和原来系统匹配。
(4)关于字符集 CHARSET。建议采用默认值 GB18030,如果需要国际字符可以
采用 Unicode,GB18030 数字字母占 1 个字节,普通汉字占 2 个字节,部分繁体及
少数民族文字占 4 字节,Unicode 在达梦中采用 UTF-8 编码格式,欧洲的字母字符
占 1 到 2 个字节,亚洲的大部分字符占 3 个字节,附加字符为 4 个字节。如果只存
储中文和字母数字,一般来说 GB18030 更节省空间一些。
INI 中兼容参数
DM 的 INI 参数文件中针对从 SQLServer 移植到 DM,有几个专门的参数,这里
将详细介绍。
compatibility
使用效果及建议
COMPATIBLE_MODE
是否兼容其他数据库模式。0:不兼容,1:兼容 SQL92 标
准,2:兼容 ORACLE,3:兼容 MS SQL SERVER,4:兼容
MYSQL,5:兼容 DM6,6:兼容 Teradata,所以当从
SQLServer 移植到 DM7 时,修改值为 3;
在 INI 参数的 compatibility 部分,还有其它的一些参数,在涉及到之前,尽
量保持默认值,在移植准备的环节,先只调整这个参数就可以了,其它参数,在移
植过程中,遇到了,再具体分析。
创建用户和表空间
从 SQLServer 移植到 DM7,要求必须创建用户自己的用户模式名和表空间,不
要把数据移植到系统默认的管理员 SYSDBA 用户下和 MAIN 表空间下。
(1)首先需要分析本次移植 SQLServer 源库需要移植的是哪一个或者哪几个
库的数据,针对不同的库,对应达梦数据库中不同的用户,然后分别创建这些需要
移植的用户的独立表空间;移植设计过程中,最好设计达梦数据库用户名称和
SQLServer 中库名相同,所以再移植准备阶段,一定要和相关技术负责人员沟通明
确清楚。
(2)创建属于各个表空间的用户及模式。便于数据的导入导出,同时增加数
据隔离性,在遇到问题的时候,更容易分析问题数据所在的位置。
2.2.2 SqlServer 移植环境
剩余51页未读,继续阅读















丨fox
- 粉丝: 0
- 资源: 8
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
最新资源
- ARM Cortex-A(armV7)编程手册V4.0.pdf
- ABB机器人保养总结解析.ppt
- 【超详细图解】菜鸡如何理解双向链表的python代码实现
- 常用网络命令的使用 ipconfig ping ARP FTP Netstat Route Tftp Tracert Telnet nslookup
- 基于单片机控制的DC-DC变换电路
- RS-232接口电路的ESD保护.pdf
- linux下用time(NULL)函数和localtime()获取当前时间的方法
- Openstack用户使用手册.docx
- KUKA KR 30 hA,KR 60 hA机器人产品手册.pdf
- Java programming with JNI
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制

评论1