达梦数据库移植方案篇一


外向笑小鸭子
外向笑小鸭子 2024-01-12 11:41:48 51490 赞同 0 反对 0
分类: 资源 标签: 运维
达梦数据库移植方案篇一

1、引言

1.1、编写目的

本文档提供了从ORACLE数据库到DM数据库移植的完整方案。

1.2、词汇定义

词汇

解释

DM

达梦公司生产的大型通用型数据库

DTS

达梦数据库迁移工具

ORACLE

甲骨文公司生产的大型通用数据库

PL/SQL

ORACLE专用SQL语言

DM-SQL

DM专用SQL语言

2、系统运行现状与需求分析

2.1、系统运行现状

介绍原系统当前运行状况(包含业务系统和数据库系统)

2.1.1、项目概况

图片

 

2.1.2、项目详情    

项目详情已实际为准

应用后台操作系统

Windows7 企业版

数据库后台操作系统

Windows7 企业版

后台数据库

ORACLE

应用开发平台

JAVA

应用开发接口

JDBC

应用系统数据库设计

用户、表、视图、序列、存储过程、索引等

          

2.2、需求分析

2.2.1、系统特性分析

结合应用系统的业务功能和使用情况,对系统进行分析,分析系统的目的在

于了解系统,判断系统移植的工作量及确定移植工作的重点和方案,主要包括以

下一些内容:

后台操作系统是什么及其版本信息,Windows、Unix、Linux 等。

后台数据库是什么及其版本信息,是 SQL Server、Oracle、Informix还是其它。

前台开发工具是什么及其版本信息,是.NET、JBuilder、Delphi 还是其它。

应用系统采用了什么开发模式,C/S 还是 B/S 模式。

应用系统使用的接口,常用的如 ODBC、OLEDB、JDBC;如果是采用通用的接口,重点将转向后台数据库的移植;如果是采用一些特别的专用接口如 OCI、API 或者自定义的接口标准,则需要进行相关接口的开发,     这时候移植工作重点将转向接口的开发上面来。

相关的一些开发组件及其版本信息。

相关的运行环境及其版本信息,如 Tomcat、.NET Framework 等。

是否用到第三方的开发工具和平台,如 SuperMap 等。

数据库的相关信息,主要有几个库,这些库之间的关系。

涉及到的数据类型,常规的如 CHAR、VARCHAR、INT 等,这些各种数据库一般都支持,如果系统用到了如日期、时间、时间戳、文本、图像等类型,在移植的时候需要注意各种数据库之间的一些差异,主要是关注长度、精度、标度信息,有时候需要做些类型转换,如在 Oracle 中的VARCHAR(8000),在达梦数据库中可考虑将其转换成 TEXT 类型或采用16KB 以上的建库模式加以解决。

注意表的定义信息,主要是关注自定义的数据类型、自定义的缺省值,因 SQLServer等数据库可创建自定义的数据类型和自定义的缺省值,而使用达梦的 DTS 工具无法将这些信息转换出来,需要在原系统中查找。

是否使用到了视图、存储过程、存储函数、触发器、序列等;如果没有使用到这些,后台数据库的移植工作将主要是进行数据迁移;如果用到了这些,且数量较多,后台数据库的移植工作将是脚本的移植转换工作。

是否用到了后台数据库的系统字典,因各数据库的系统字典格式和内容均不一样,这时候需要分析原数据库的系统字典的涵义,只能根据使用的实际情况作相应的处理。

系统的运行规模和效率要求,如并发访问量,使用的频度,时间响应要求,主要是确定优化的方案,如果要求不高,优化的时候主要是采用创建索引的方法,如果要求较高,可考虑采用改写 SQL 语句的方法来进行,甚至考虑改写程序逻辑。   

是否有其它的特别的要求,如安全控制、双机热备、数据同步等,如果有这些要求,移植工作的重点和难点将转向这些问题的解决。

2.2.2、数据库常规需求分析

结合运行现状,分析移植系统中的重难点、注意事项、移植目标总结。

2.2.2.1、兼容性

本项目中原数据库使用了 Oracle 数据库,且整体业务压力较大,用替代的数据库必须能够很好的兼容 Oracle 的技术架构和语句才能保证顺利替换和稳定运行。

如果采用常规的主备或者读写分离集群根本无法支撑现有业务压力,如果对业务拆分或者重构,那投入巨大不多,还会存在数据安全的风险。达梦数据库作为一款 100%自研的国产数据库管理系统,针对 Oracle 做了大量的兼容工作,语法几乎完全兼容 Oracle,架构拥有与 Oracle RAC 集群相同技术原理的 DSC 集群(数据共享集群)。

2.2.2.2、安全性

本项目是一个及其重要和敏感的系统。项目在建设过程中,必须充分考虑平台的安全性。采用先进的安全产品和技术,为平台提供边界安全、数据中心安全、计算机终端的接入安全,并对操作行为进行实时有效的监控和日志记录。

2.2.2.3、高可用

传统数据库采用的是单机架构,存在单点风险。如果某个数据库服务器故障,   则该局的业务系统将停止服务。采用人工方式进行备份恢复,效率低,部分没有及时备份的数据还存在丢失的风险。

为提高系统的高可靠性,每台数据库服务器故障时,需要有其他的数据库服务器能接管其服务,同时还要保持数据不丢失。根据数据库实现技术,需要采用主备集群架构,或者采用共享集群集群架构。当某个节点故障时,其他节点可以自动接管,系统底层保障多个节点之间的数据一致性,从而大大提升整个数据库集群的高可用性

2.2.2.4、容灾备份

要求数据库系统可以做到数据的异地容灾,保证在主数据中心遭受不可抗力等因素损毁的情况下,整个业务系统依然可以较快的恢复,并提供服务。

2.2.2.5、通用性

项目建设和后期维护期间,可能涉及到多种硬件平台、软件平台的使用、多种系统之间的数据交互、多种开发语言的访问。要求相关的数据库产品能够兼容主流的硬件平台、支持主流操作系统、支持标准的数据接口,网络协议,字符集等。

2.2.2.6、拓展性

随着业务增长,一方面现有业务系统的数据量逐步增大,二来会增加越来越多的业务系统,数据库访问用户数增多,现有数据库压力增大。数据库架构必须能够适应这种扩展性需求。

2.2.2.7、统一运维

原有的多套数据库相互独立,需要分别进行运维监控,工作量大,效率低,同时多台数据库服务器资源使用率不均衡,造成资源浪费。需要利用统一的管理运维工具,统一管理所有的数据库服务器,简化运维工作量,能根据不同服务器的资源和负载状况,实现自动负载均衡。

3、移植方案规划

3.1、数据库部署架构规划

根据上述项目需求分析,应选择合理的数据库架构。在移植类的项目中,应尽可能地选择同等架构移植,将大大降低移植难度和成本。

3.2、移植方案规划

以 Oracle 数据库为代表的数据库软件产品,已经长期、广泛应用于国内各行业的核心业务系统中。当面临升级替换时,需要解决新老数据库切换过程中数据迁移、应用兼容、新系统稳定性等各种问题,降低用户进行数据库管理系统架构迁移的风险。

达梦数据库提供对原有数据库良好兼容性,通过移植,一套应用系统可以在达梦数据库、原有数据库之间切换运行,对最终用户而言业务不中断,无感知,切换过程平滑。

在设计移植方案之前,应依据前面调研分析结果,确定数据库迁移是整体迁移还是分批次逐步迁移;确定迁移时间和具体的人员安排;制定符合要求的迁移实施方案。为防止不可预知的事件影响到生产业务或数据,提前制订应急预案、回退技术方案。

在确定采用的迁移技术后,制定详细的迁移准备计划及检查清单,在实施前进行完善的技术准备。在进行迁移实施操作时,针对每个目标数据库开发详细的迁移操作手册,该手册将详细定义迁移的每个具体的步骤、执行时间和执行人。该手册将作为本次项目实施操作的依据,同时也在项目结束后归档到知识库中,     作为未来运维的参考。

3.2.1、数据库迁移原则

为了确保迁移过程的可靠性,以及迁移后业务系统的可用性,降低数据迁移对业务应用系统正常运行所带来的风险,我们建议尽量采用安全迁移的原则,即对迁移前后的数据进行测试、比对。数据迁移前后必须保持一致,操作系统版本则可根据实际情况进行调整。

3.2.2、数据库迁移思路

为了确保数据迁移过程的可靠性,我们建议在进行数据迁移之前,进行充分的需求分析和方案设计,并制定严格的数据迁移规范和流程。

1、IT架构分析

了解迁移前和迁移后业务系统环境,包括主机配置、数量、操作系统版本、存储架构、磁盘管理方式等。应重点关注迁移前后主机操作系统版本、数据库异构的情况。

2、数据容量评估

确定需要迁移的数据量大小,可用于执行迁移的网络带宽,从而估算出迁移所需要的时间,作为迁移时间窗口的评估输入。

3、业务系统连续性评估

评估客户对停机时间的容忍度,以及对业务连续性的保持需求,确定可用于执行迁移的停机时间;对于某些关键的需 7*24 连续运行的业务系统,则只能选择在线迁移方案,所以尽量错开用户高峰期,使得对用户的影响最小化。

4、迁移方案设计和选型

对数据迁移实施过程中的风险点进行分析,并提出控制预案和回退方案;对     于某些关键的核心业务应用系统,可根据客户需求,对数据迁移方案进行验证和演练,并根据演练结果对迁移方案进行修订和完善。

5、迁移实施和测试

严格按照迁移方案的步骤,进行数据迁移操作。迁移完成后应进行数据的完整性和一致性校验工作,以保证迁移以后没有数据丢失,数据库及应用能够正常、准确无误的工作,确认数据迁移成功后,进行业务应用系统的切换。

6、变更之前应该先备份

对数据进行迁移难免会涉及到变更,而变更操作一般来说是有一定的风险系数的,所以在执行变更操作之前需要先备份原有数据,以保证如果变更失败或者出现灾难时,可以退回到之前的场景,避免数据的丢失。

7、迁移时不能修改数据表结构

迁移期间,不要对迁移的数据表进行任何 DDL 操作,如:修改表结构等。否则在迁移后可能出现意想不到的错误。

3.2.3、数据迁移方式选择

数据迁移可以采用 3 种方案,包括逻辑备份恢复,物理备份恢复和数据迁移工具迁移。3 种方案都支持在不同的操作系统平台和硬件环境下进行数据迁移。

3.2.3.1、逻辑导出导入方案

逻辑导出(dexp)和逻辑导入(dimp)是 DM 数据库的两个命令行工具,分别用来实现对 DM 数据库的逻辑备份和逻辑还原。逻辑备份和逻辑还原都是在联机方式下完成,联机方式是指数据库服务器正常运行过程中进行的备份和还原。dexp 和 dimp 是 DM 数据库自带的工具,只要安装了 DM 数据库,就可以在安装目录/dmdbms/bin 中找到。   

逻辑导出和逻辑导入数据库对象分为四种级别:数据库级、用户级、模式级和表级。四种级别独立互斥,不能同时存在。四种级别所提供的功能:

数据库级(FULL):导出或导入整个数据库中的所有对象。

用户级(OWNER):导出或导入一个或多个用户所拥有的所有对象。

模式级(SCHEMAS):导出或导入一个或多个模式下的所有对象。

表级(TABLE):导出或导入一个或多个指定的表或表分区。

3.2.3.2、物理备份恢复方案

DM 数据库中的数据存储在数据库的物理数据文件中,数据文件按照页、簇和段的方式进行管理,数据页是最小的数据存储单元。任何一个对 DM 数据库的操作,归根结底都是对某个数据文件页的读写操作。

因此,DM 备份的本质就是从数据库文件中拷贝有效的数据页保存到备份集中,这里的有效数据页包括数据文件的描述页和被分配使用的数据页。而在备份的过程中,如果数据库系统还在继续运行,这期间的数据库操作并不是都会立即体现到数据文件中,而是首先以日志的形式写到归档日志中,因此,为了保证用户可以通过备份集将数据恢复到备份结束时间点的状态,就需要将备份过程中产生的归档日志也保存到备份集中。

还原与恢复是备份的逆过程。还原是将备份集中的有效数据页重新写入目标数据文件的过程。恢复则是指通过重做归档日志,将数据库状态恢复到备份结束时的状态;也可以恢复到指定时间点和指定 LSN。恢复结束以后,数据库中可能存在处于未提交状态的活动事务,这些活动事务在恢复结束后的第一次数据库系统启动时,会由 DM 数据库自动进行回滚。备份、还原与恢复的关系如下图所示:   

图片

                                        图:备份、还原与恢复

库还原就是根据库备份集中记录的文件信息重新创建数据库文件,并将数据页重新拷贝到目标数据库的过程。DM 既可以将一个已存在的数据库作为还原目标库,也可以指定一个路径作为还原目标库的目录。库还原的主要步骤包括:清理目标库环境;重建数据库文件;拷贝数据页;重建联机日志文件;修改配置参数等。

DM 的物理备份一般包括数据备份和日志备份两部分,数据备份是拷贝数据页内容,日志备份则是拷贝备份过程中产生的 REDO 日志。数据库进行物理备份还原有两种方式可供选择:联机备份和脱机备份。

脱机备份

数据库处于关闭状态时进行的备份操作,被称为脱机备份。此时达梦 DMAP服务打开的状态下,数据库实例是关闭的。

联机备份    

数据库处于运行状态、并正常提供数据库服务情况下进行的备份操作,我们称为联机备份。此时达梦 DMAP 服务一定是打开的,数据库实例是打开的,并且数据库要开启归档模式。

联机备份还原首先要配置归档,归档配置有三种方式:一是联机归档配置,数据库服务器启动情况下,使用 SQL 语句完成 dmarch.ini 和 ARCH_INI 配置;二是手动配置归档,数据库服务器未启动的情况下,手动编写 dmarch.ini 文件和

设置参数 ARCH_INI;三是通过达梦自带的 manager 管理工具,在数据库服务器启动的情况下利用图形界面去配置。

3.2.3.3、数据迁移工具DTS

为了实现与 ORACLE、DB2、SQL Server 等多种主流数据库管理系统的数据交换,DM 提供跨平台的数据迁移工具 DTS。它是一个用纯 Java 编写的基JDBC/ODBC 的数据迁移工具,可跨平台实现数据库之间的数据和结构互导,例如DM 与 DM 之间、DM 与 ORACLE、MS SQL Server 之间等,也可复制从 SQL查询中获得的数据,还可实现数据库与文本文件之间的数据或者结构互导。在迁移的过程中它最大限度地保留了源数据的原始信息(包括源数据的类型、精度、默认值、主键和外键约束等),还支持迁移过程中的数据类型自动转换,关于转换方面的细节问题可由数据迁移工具自动来为您解决,数据库管理员所要做的仅仅是指定需要进行数据迁移的两个数据库的连接参数和所迁移的数据。

DM 数据迁移工具提供了主流大型数据库迁移到 DM、DM 迁移到主流大型数据库、DM 到 DM、文件迁移到 DM 以及 DM 迁移到文件的功能。DM 数据迁移工具采用向导方式引导用户通过简单的步骤完成需要的操作。

DM 数据迁移工具支持:   

DM 数据库之间模式、表、序列、视图、存储过程/函数、包、触发器、对象权限的迁移。

主流大型数据库 Oracle、SQLServer、MySQL、DB2、PostgreSQL、Informix、Kingbase、Sybase 的模式、表、视图、序列、索引迁移到DM

DM 的模式、表、视图、序列、索引迁移到主流大型数据库 Oracle、SQLServer、MySQL

ODBC 数据源、JDBC 数据源的模式、表、视图迁移到 DM

DM 数据库模式、表、序列、视图、存储过程/函数、包、触发器、对象权限迁移到 XML 文件,SQL 脚本文件

DM 数据库的表、视图数据迁移到文本文件,Excel 文件,Word 文件

指定格式的文本文件,Excel 文件,Word 文件,XML 文件和 SQL 脚本文件迁移到 DM 数据库    

图片

得益于 DM 数据库对目前主流大型关系型数据库系统有着业界领先的兼容性,在存储层面、语法层面、接口层面和它们保持高度兼容,借助于 DM 图形界面且采用向导方式引导各个迁移步骤的 DTS 工具,移植工作可以变得非常的简单。

DM 良好的数据迁移解决方案为系统移植工作减少了很大一部分工作量,免去系统管理员和开发人员的后顾之忧,能够将更多的精力投入到应用程序的移植上面来。

3.2.3.4、数据实时同步工具

达梦数据同步软件 DMHS 是达梦公司推出的新一代支持异构环境的高性能、高可靠、高可扩展数据库实时同步系统。该产品基于成熟的关系数据模型和标准接口,跨越多种软硬件平台,支持强大而灵活的拓扑结构,能以极少的系统开支实现秒级数据实时同步,可广泛应用于应急系统、容灾备份、负载均衡、数据移植、联机维护、订阅分发、多业务中心等业务领域。   

图片

随着信息化建设的高速发展,信息系统已经成为企业维持业务运转的关键,企业迫切需要提高信息系统的可用性,保证业务的连续性,最大限度地减少因灾难或故障所带来的损失。另一方面,多样化的业务类型导致数据访问需求的日趋复杂化,数据量的急剧攀升也导致数据库服务器不堪重负,企业同样迫切需要提高信息系统的运行效率。

达梦数据同步软件 DMHS,通过秒级数据实时同步可以有效避免传统备份系统导致的无法完全满足企业对于信息系统不中断服务的问题;通过变化日志捕捉可以有效降低传统 ETL 工具因创建触发器、影子表等对业务系统带来的性能影响;通过可读写的备机数据库系统可以解决传统备机系统仅作为后备而无法对外提供数据服务的问题。

主要技术特点:

源端基于数据库日志分析进行增量数据捕获

目标端基于标准数据库接口进行增量数据应用(ODBC)    

以数据库事务为最小复制单位,确保复制数据的完整性和一致性

支持主流关系型数据库(DM 系列、ORACLE 系列、MySQL、PostgreSQL、DB2、SQL SERVER)

支持多种软硬件平台、支持多种复制拓扑结构

支持断点续传、支持同步数据链路冗余

丰富的高级功能支持:文件转换、复杂拓扑、FTP 架构、kafka 支持、ETL 支持      

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
外向笑小鸭子L0
粉丝 0 资源 87 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  123
统信桌面专业版【全盘安装UOS系统】介绍  116
银河麒麟桌面操作系统安装佳能打印机驱动方法  108
银河麒麟桌面操作系统 V10-SP1用户密码修改  101
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益217.85元

3

1843880570 收益214.2元

4

IT-feng 收益208.98元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!