Oracle向DB2迁移:主要的流程与工具(精)
- 格式:doc
- 大小:17.00 KB
- 文档页数:3
1 新老系统迁移及整合方案本次总局综合业务系统是在原有系统的基础上开发完成,因此,新旧系统间就存在着切换的问题。
另外,新开发的系统还存在与其他一些应用系统,例如,企业信用联网应用系统、企业登记子网站、外资登记子网站等系统进行整合使之成为一个相互连通的系统。
本章将针对新老系统迁移和整合提出解决方案。
1.1 新老系统迁移及整合需求分析系统迁移又称为系统切换,即新系统开发完成后将老系统切换到新系统上来。
系统切换得主要任务包括:数据资源整合、新旧系统迁移、新系统运行监控过程。
数据资源整合包含两个步骤:数据整理与数据转换。
数据整理就是将原系统数据整理为系统转换程序能够识别的数据;数据转换就是将整理完成后的数据按照一定的转换规则转换成新系统要求的数据格式,数据的整合是整合系统切换的关键;新旧系统迁移就是在数据正确转换的基础上,制定一个切实可行的计划,保证业务办理顺利、平稳过渡到新系统中进行;新系统运行监控就是在新系统正常运转后,还需要监控整个新系统运行的有效性和正确性,以便及时对数据转换过程中出现的问题进行纠正。
系统整合是针对新开发的系统与保留的老系统之间的整合,以保证新开发的系统能与保留的老系统互动,保证业务的顺利开展。
主要的任务是接口的开发。
1.1.1 需要进行迁移的系统1.1.2 需要进行整合的系统需要与保留系统整合的系统包括:1、企业登记管理(含信用分类),全国企业信用联网统计分析,不冠行政区划企业名称核准,大屏幕触摸屏系统与企业信用联网应用,企业登记子网站,属地监管传输,网上业务受理之间的整合;2、外资企业登记管理(含信用分类),全国外资企业监测分析与属地监管传输,外资登记子网站,网上业务受理,大屏幕触摸屏系统之间的整合;3、广告监管系统与广告监管子网站之间的整合;4、12315数据统计分析与12315子网站之间的整合;5、通用信息查询、统计系统与数据采集转换之间的整合;1.1.3 数据迁移和转换分析根据招标文件工商总局新建系统的数据库基于IBMDB2,而原有系统的数据库包括ORACLE,SQLServer,DB2。
db2数据库迁移步骤db2数据库迁移步骤随着科技的发展和数据的不断积累,许多企业会面临将其数据库迁移到更高效、更可靠的平台的需求。
在这篇文章中,我将为您介绍db2数据库迁移的一般步骤,并分享一些我对数据库迁移的观点和理解。
1. 确定迁移目标和原因在开始数据库迁移之前,首先需要明确迁移的目标和原因。
您可能希望将数据库从旧版db2迁移到新版db2,或者从其他数据库平台(如Oracle)迁移到db2。
确定迁移目标和原因对后续的步骤非常关键,因为它们将指导您选择适当的工具和方法。
2. 数据库备份和准备在进行数据库迁移之前,务必备份源数据库,以防意外数据丢失或迁移失败。
您还应该确保源数据库的架构和数据是正确的,并在迁移之前进行必要的清理和优化。
这样可以减少迁移过程中的问题和错误,并提高迁移的成功率。
3. 选择迁移工具选择适当的迁移工具对数据库迁移的成功至关重要。
在db2数据库迁移中,您可以选择使用IBM提供的迁移工具,如IBM Database Conversion Workbench或IBM Data Movement Tool。
这些工具可以帮助您将数据从源数据库平台迁移到db2,并处理数据类型和架构的映射。
4. 迁移数据和应用程序一旦选择了适当的迁移工具,就可以开始迁移数据和应用程序。
在这一步骤中,您可能需要对数据进行转换和映射,以确保在目标数据库中的正确性和完整性。
您还应该测试和验证已迁移的数据和应用程序,以确保它们与源数据库一致,并且可以正常运行。
5. 更新连接和配置完成数据和应用程序的迁移之后,您需要更新连接和配置,以便它们指向新的db2数据库。
这包括更新应用程序代码中的数据库连接字符串、修改数据库配置文件以反映迁移后的设置,以及确保所有相关的服务和组件都已正确地指向新的数据库。
6. 测试和性能优化在数据迁移完成之后,您应该进行全面的测试和性能优化。
这包括对数据库进行负载和压力测试,以确保它可以处理预期的数据量和并发请求。
db2迁移方案咱来说说DB2迁移方案哈。
一、前期准备。
1. 评估现状。
首先得好好瞅瞅现在的DB2系统。
就像给它做个全身检查似的,看看数据库里都存了些啥数据,数据量有多大。
这就好比清点家里的东西,知道有多少瓶瓶罐罐,多大容量一样。
了解有哪些表、视图、存储过程之类的。
如果数据量超级大,那迁移的时候就得特别小心,就像搬一个超级重的大柜子,得有合适的工具和计划。
还要看看现在的DB2版本,因为不同版本可能在功能和兼容性上有差别。
这就像你知道自己手机是啥型号的,才能确定能不能升级到新系统嘛。
2. 确定目标环境。
想清楚要把DB2迁移到哪儿去。
是要迁移到另一个DB2服务器,还是要转到其他数据库系统,像Oracle或者MySQL之类的。
如果是转到其他系统,那就得研究这个目标系统的特性了。
这就好比你要搬家,得先确定新的住址,还得看看新地方的环境,有没有足够的空间放你的东西。
考虑目标环境的硬件资源。
如果新环境的磁盘空间或者内存不够,那迁移过去也会出问题。
这就像你想把大象塞进小汽车里,根本就塞不下呀。
3. 数据备份。
这可是超级重要的一步,就像给你的宝贝数据穿上一层保护甲。
把DB2里的数据完整地备份出来,可以用DB2自带的备份工具。
这备份就像是你的数据的一个副本,万一迁移过程中出了岔子,还能有个回退的余地。
就像你走钢丝的时候,下面得有个安全网一样。
4. 制定迁移计划。
得做个详细的计划,就像规划一次旅行一样。
先确定迁移的时间表,啥时候开始迁移,预计啥时候结束。
比如说,不能在业务高峰期迁移,得挑个大家都不咋用系统的时候,就像半夜搬家,不会打扰到邻居一样。
规划好迁移的步骤,是一次性迁移所有数据,还是分阶段迁移。
如果数据很多,分阶段迁移可能更靠谱,就像蚂蚁搬家,一点一点来。
还要确定迁移过程中的测试计划,得确保迁移过去的数据是正确的,就像检查新搬的家东西有没有损坏一样。
二、迁移过程。
1. 数据转换(如果目标是不同数据库)如果是从DB2迁移到其他类型的数据库,可能需要进行数据转换。
1. 1 系统数据迁移方案1.1.1 存储设备之间的复制利用存储设备上的复制软件,在源存储设备和目标存储设备之间进行直接的数据复制。
示例:在两台XP磁盘阵列之间用Continuous Access软件进行数据复制。
适用范围:源存储设备与目标存储设备必须是同种存储设备;源主机与目标主机必须是同种操作系统优势:复制效率最高;无须主机参与分;停机时间短劣势:适用范围最小基本步骤:配置目标存储设备建立源设备与目标设备的复制关系数据复制源主机停止应用运行断开复制关系目标主机接管目标存储设备目标主机启动应用运行1.1.2 基于主机的数据复制利用主机上的数据复制软件(包含的操作系统之内的如HPUX上的MirrorDisk,或者第三方的中间件如TDMF),在源存储设备和目标存储设备之间进行直接的数据复制。
示例:用一台主机上的MirrorDisk软件实现一台EVA5000到一台XP12000的数据迁移。
适用范围:源存储设备与目标存储设备可以是同种或者异种存储设备;源主机与目标主机必须是同种操作系统。
优势:停机时间短复制效率较高劣势:需要主机参与限制条件较多基本步骤:配置目标存储设备在主机上安装复制软件建立源设备与目标设备的复制关系数据复制源主机停止应用运行断开复制关系目标主机接管目标存储设备目标主机启动应用运行1.1.3 基于应用层的数据迁移从源数据中抽取逻辑数据到中间文件,然后在目标主机上利用应用软件读取数据中间文件,并在目标存储设备上重建目标数据。
示例:在一台AIX主机上从一台FastT500上的DB2数据库中抽取数据到文本文件,并通过FTP传送到一台HPUX主机上,HPUX主机读取该文本文件,并把数据插入到Oracle数据库中。
适用范围:源存储设备与目标存储设备可以是同种或者异种存储设备;源主机与目标主机可以是同种或者异种操作系统。
优势:适用范围最宽劣势:需要设计专用的数据迁移软件;需要较长的停机时间。
基本步骤:配置目标存储设备源主机停止应用运行在源主机上抽取应用数据到文本文件中把文本文件复制到目标主机在目标主机上读取文本文件,并插入到目的系统中目标主机启动应用进行测试目标主机启动应用运行1.1.4 基于主机的数据复制迁移方案Tapestry数据迁移管理器(DMM)是一个简单而强大的数据迁移工具,可提供高效的异构数据迁移,为用户提供了更多的存储灵活性,降低了成本。
1所需工具及部署结构Windows2003: IP 10.30.100.20510201_database_win32.zip10201_gateways_win32.zipv9.7fp6_nt32_rtcl_CN.exeToadforDB2_Freeware_4.7.2.642PL/SQL V9.0AIX 5.2: IP 10.30.100.20DB2 V8.12安装及配置说明2.1 Win2003测试机上部署:oracle数据库,并建立用于存放DB2转换过来数据的目标库实例,安装路径D:\oracle\product\10.2.0\db_1;oracle透明网关,通过数据源连接DB2,并建立到DB2服务器的dblink,安装路径D:\oracle\product\10.2.0\tg_1;DB2客户端程序v9.7fp6_nt32_rtcl_CN.exe,用于建立到DB2服务器的连接;Toad:连接DB2 服务器获取并确认需要迁移的范围;2.2 AIX机器上部署DB2源数据库(可能存在多个instance)2.3 配置及转换说明2.3.1ODBC数据源配置安装完成后,打开控制面板—管理工具—ODBC数据源,然后配置DB2客户端和DB2服务端之间的连接。
打开ODBC数据源管理工具,打开页面系统DSN,单击添加按钮,选择IBM DB2 ODBC DRIVER – DB2COPY1,单击完成,然后输入数据源名称,数据库别名选择一下,单击确定.完成后,在系统数据源下方显示刚才配置的DSN,单击配置,输入相关的连接信息(用户名和密码等等),保存退出。
至此DB2客户端和服务端之间的ODBC数据源配置完成。
2.3.2D:\oracle\product\10.2.0\db_1\hs\admin下新增配置文件initaccnt.ora文件名init*.ora,*为数据源名称,编辑文件内容如下:# This is a sample agent init file that contains the HS parameters that are# needed for an ODBC Agent.## HS init parameters#HS_FDS_CONNECT_INFO = accntHS_FDS_TRACE_LEVEL = off## Environment variables required for the non-Oracle system##set <envvar>=<value>其中HS_FDS_CONNECT_INFO = accnt (配置为数据源名称)2.3.3Listener与tnsname配置D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\ listener.ora配置如下:SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)(PROGRAM = extproc))(SID_DESC =(SID_NAME = accnt)(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)(PROGRAM = hsodbc)))LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.30.100.205)(PORT = 1521))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))))如果有多个数据源可增加多个如下段:(SID_DESC =(SID_NAME = accnt)(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)(PROGRAM = hsodbc))D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsname.ora配置如下:qydb =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.30.100.205)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = qydb)))accnt =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.30.3.100)(PORT = 1521)))(CONNECT_DATA =(SID = accnt))(HS = OK))accnt为数据源名称。
db2常⽤命令(详解)⼤全近⼀年来在项⽬开发中使⽤到了IBM的DB2 9.1的数据库产品,跟Oracle相⽐⼀些命令有很⼤的区别,⽽它最⼤的功能是⽀持xml存储、检索机制,通过XPath进⾏解析操作,使开发⼈员免于对xml⽂件在应⽤进⾏解析处理,先对其常⽤命令进⾏⼀下汇总,以免遗忘。
注意:在执⾏如下命令时,需要⾸先安装db2客户端并通过在运⾏中输⼊db2cmd进⾏初始化⼀、基础篇1、db2 connect to <数据库名> --连接到本地数据库名db2 connect to <数据库名> user <⽤户名> using <密码> --连接到远端数据库2、 db2 force application all --强迫所有应⽤断开数据库连接3、db2 backup db db2name<数据库名称> --备份整个数据库数据db2 restore db <db2name> --还原数据库4、db2 list application --查看所有连接(需要连接到具体数据库才能查看)5、db2start --启动数据库db2stop --停⽌数据库6、create database <数据库名> using codeset utf-8 territory CN--创建数据库使⽤utf-8编码7、db2 catalog 命令db2 catalog tcpip node <接点名称> remote <远程数据库地址> server <端⼝号>--把远程数据库映射到本地接点⼀般为50000db2 catalog db <远程数据库名称> as <接点名称> at node PUB11--远程数据库名称到本地接点db2 CONNECT TO <接点名称> user <⽤户名> using <密码>--连接本地接点访问远程数据库8、数据库导出db2look -d <数据库名> -u <⽤户> -e -o <脚本名称>.sql--导出数据库的表结构,其中⽤户空间⼀般为db2admin/db2inst1db2look -d <数据库名> -u <⽤户> -t <表1> <表2> -e -o <脚本名称>.sql--导出数据库中表1和表2的表结构db2move <数据库名> export --导出数据库数据db2move <数据库名> export -tn <表1>,<表2> --导出数据库中表和表数据 db2move dbname export;db2move dbname import db2move bipdbrun export -sn app -u app -p app9、数据库导⼊db2 -tvf <脚本名称>.sql --把上述导出的表结构导⼊到数据库表结构db2move <数据库名> load -lo replace --把上述“db2move <数据库名> export“导出的数据导⼊到数据库中并把相同的数据替换掉在实际使⽤过程中,如果⽤到db2⾃增主键,需要使⽤by default,⽽不是always,功能是⼀样的,但这样在数据移植时候会很⽅便!10、db2 connect reset 或 db2 terminate --断开与数据库的连接11、db2set db2codepage=1208 --修改页编码为120812、db2 describe table <表名> --查看表结构13、db2 list tables --查看数据库中所有表结构list tables for system --列出所有系统表14、db2 list tablespaces --列出表空间⼆、⾼级篇15、fetch first 10 rows only --列出表中前10条数据例如:select * from <表名> fetch first 10 rows only16、coalesce(字段名,转换后的值) --对是null的字段进⾏值转换例如:select coalesce(id,1) from <表名> --对表中id如果为null转换成117、dayofweek(⽇期) --计算出⽇期中是周⼏(1是周⽇,2是周⼀.......7是周六)dayofweek_iso --计算出⽇期中是周⼏(1是周⼀.......7是周⽇)例如:dayofweek(date(2008-01-16)) --它会返回是4,代表星期三dayofweek_iso(date(2008-01-16)) --它会返回是3,代表星期三18、dayofyear(⽇期) --⼀年中的第⼏天,范围在1-366范围之内注意:参数中⽇期的格式是YYYY-MM-DD的形式,如果不是需要进⾏转换,否则函数不能使⽤例如:⽇期是20080116必须要进⾏转换dayofweek(concat(concat(concat(substr(openDate,1,4),'-'),concat(substr(openDate,5,2),'-')),substr(openDate,7,2)))as week)这样格式正确的。
1 新老系统迁移及调整规划之阳早格格创做本次总局概括接易系统是正在本有系统的前提上开垦完成,果此,新旧系统间便存留着切换的问题.其余,新开垦的系统还存留与其余一些应用系统,比圆,企业疑用联网应用系统、企业备案子网站、中资备案子网站等系统举止调整使之成为一个相互连通的系统.本章将针对付新老系统迁移战调整提出办理规划.1.1 新老系统迁移及调整需要领会系统迁移又称为系统切换,即新系统开垦完成后将老系统切换到新系统上去.系统切换得主要任务包罗:数据资材调整、新旧系统迁移、新系统运止监控历程.数据资材调整包罗二个步调:数据整治与数据变换.数据整治便是将本系统数据整治为系统变换步调不妨识别的数据;数据变换便是将整治完成后的数据依照一定的变换准则变换成新系统央供的数据要领,数据的调整是调整系统切换的关键;新旧系统迁移便是正在数据粗确变换的前提上,制定一个确真可止的计划,包管接易操持乐成、稳固过度到新系统中举止;新系统运止监控便是正在新系统仄常运止后,还需要监控所有新系统运止的灵验性战粗确性,以便即时对付数据变换历程中出现的问题举止纠正.系统调整是针对付新开垦的系统与死存的老系统之间的调整,以包管新开垦的系统能与死存的老系统互动,包管接易的乐成开展.主要的任务是接心的开垦.1.1.1 需要举止迁移的系统1.1.2 需要举止调整的系统需要与死存系统调整的系统包罗:1、企业备案管制(含疑用分类),世界企业疑用联网统计领会,不冠止政区划企业称呼批准,大屏幕触摸屏系统与企业疑用联网应用,企业备案子网站,属天禁锢传输,网上接易受理之间的调整;2、中资企业备案管制(含疑用分类),齐海中资企业监测领会与属天禁锢传输,中资备案子网站,网上接易受理,大屏幕触摸屏系统之间的调整;3、广告禁锢系统与广告禁锢子网站之间的调整;4、12315数据统计领会与12315子网站之间的调整;5、通用疑息查询、统计系统与数据支集变换之间的调整;1.1.3 数据迁移战变换领会根据招标文献工商总局新建系统的数据库鉴于IBMDB2,而本有系统的数据库包罗ORACLE,SQL Server,DB2.那种同构数据正在总局主要存留于二个圆里,即部分里里的同构数据战上下级部分之间的同构数据.共时,系统的技能构件有.NET战J2EE二大类.对付于部分里里的同构数据的集成采与数据移植的要领,如:如果数据有鉴于DB2管制的,有ORACLE管制的,有SQL Server管制的,便根据新系统DB2的央供,把ORACLE的数据迁移到DB2数据库中,把SQL Server的数据迁移到DB2数据库中.上下级国工商局之间的同构数据的集成利用数据接换系统去完成,沉面正在于数据库死存尺度、接换尺度的制定战按照,包管数据的共享,那部分处事由数据核心完成.1.2 系统迁移战调整目标一、系统切换的主要目标:●包管系统仄常运止正在数据变换历程中,由于本有的系统数据的搀纯性,给数据变换处事戴去了很大的易度,为了正在新系统开用后不做用本系统仄常的接易,果此数据变换完成后,必须包管新系统的仄常运止.●包管本有系统正在新系统中的独力性本有系统是独力运止的系统,数据正在新系统中虽然是集结存搁的,然而是各个系统由于存留接易上的不共,数据正在逻辑上应当脆持一定的独力性.二、系统调整的目标:包管间接联系的系统互动,包管接易的仄常操持.比圆公寡服务系统与基础接易系统之间互动,基础接易与协共接易之间互动等等.1.3 系统切换规划1.3.1 系统切换处事过程系统切换包罗前期调研、数据整治、数据变换、系统切换、运止监控五个阶段.系统切换的所有处事过程如下所示:图错误!文档中没有指定样式的文字。
db2maestro 用法(实用版)目录1.db2maestro 简介2.db2maestro 功能3.db2maestro 安装与配置4.db2maestro 使用示例5.db2maestro 的优点与不足正文db2maestro 是一款用于将数据库迁移到数据库管理系统(DBMS)的工具。
它支持多种数据库,如 MySQL、Oracle、SQL Server 等,可以将这些数据库迁移到 DB2。
db2maestro 具有强大的数据迁移功能,可以迁移表结构、数据、索引等,同时支持批量迁移和自动转换数据类型。
安装与配置 db2maestro 非常简单。
首先,从官方网站下载db2maestro,然后按照提示进行安装。
安装完成后,需要配置连接信息,包括源数据库和目标数据库的连接信息。
配置完成后,就可以开始使用db2maestro 进行数据库迁移了。
以下是一个 db2maestro 的使用示例。
假设我们有一个 MySQL 数据库,表名为"user",包含字段"id"、"name"、"age",现在需要将这个表迁移到 DB2 数据库。
首先,在 db2maestro 中添加一个新的迁移任务,选择源数据库为 MySQL,目标数据库为 DB2,然后点击"下一步"。
在弹出的窗口中,选择要迁移的表,点击"下一步"。
在接下来的窗口中,可以自定义迁移规则,如数据类型转换、表名和列名映射等。
完成这些设置后,点击"完成"开始迁移。
db2maestro 会自动完成表结构、数据、索引等的迁移,并在迁移完成后给出详细的迁移报告。
db2maestro 具有许多优点,如支持多种数据库、强大的数据迁移功能、易于安装和配置等。
但是,它也存在一些不足,如在迁移过程中可能会出现数据丢失或数据类型转换错误的情况,需要用户注意。
Oracle 向 DB2迁移:主要的流程与工具数据库迁移可以看作一个特殊的软件开发项目,与其他开发项目不同的是这个项目的需求是确定的,技术障碍较低,主要工作是代码编写和测试。
对数据库管理人员来说,数据库数据迁移极具挑战性,一旦措施不当,珍贵的数据资源将面临丢失的危险,要成功地实现数据库数据平滑迁移,需要周密计划和充分准备,并按照一定的步骤来完成。
另一方面,数据库迁移项目的成功也主要依赖于客户与开发商的积极配合和有序组织。
当然,企业数据库通常数据量都比较大,结构也比较复杂,如果完全通过手工来完成,那是一个不可想象的大工程。
所以正确的步骤加合适的迁移工具也能达到事半功倍的效果。
Oracle向DB2迁移的主要流程Oracle向DB2迁移一般来说遵循3大流程:迁移评估、模拟迁移、正式迁移。
1、迁移评估全面的评估是迁移成功的一个关键要素,评估的总体目标是发现可能影响迁移过程的问题以便分配足够的资源来保证迁移取得成功。
首先,是评估应用环境和应用程序,识别潜在的障碍;第二,您的 Oracle 数据库将在多大程度上适应 DB2 的硬数据;最后,分析 Oracle 数据库对象和过程,识别使用 DB2中不支持的那些特性的对象和过程。
2、模拟迁移1在进行模拟迁移前,我们必须先设计数据迁移的方案,一般设计数据迁移方案主要包括以下几个方面工作:研究与数据迁移相关的资料,或在网站上查询相关内容、选择数据迁移的软硬件平台、选择数据迁移方法、选择数据备份和恢复策略、设计数据迁移和测试方案等。
2根据设计的数据迁移方案,建立一个模拟的数据迁移环境,它既能仿真实际环境又不影响实际数据,然后在数据模拟迁移环境中测试数据迁移的效果。
数据模拟迁移前也应按备份策略备份模拟数据,以便数据迁移后能按恢复策略进行恢复测试。
3根据设计的数据迁移测试方案测试数据模拟迁移,也就是检查数据模拟迁移后数据和应用软件是否正常,主要包括:数据一致性测试、应用软件执行功能测试、性能测试、数据备份和恢复测试等。
3、正式迁移数据模拟迁移测试成功后,可以正式实施数据的迁移了。
在这里介绍一种简单的测试方法,首先利用 DB2 兼容特性迁移 Oracle 应用,创建兼容模式 DB2 数据库。
在 DB2 V9.7 上启用 Oracle 应用程序时,实例和数据库必须处于兼容模式。
还建议调整舍入行为以匹配 Oracle。
通过把重新验证语义(revalidation
semantics设置为 deferred_force,可以不按依赖次序部署对象。
在 UNIX 系统上:
$ db2set DB2_COMPATIBILITY_VECTOR=ORA $ db2set
DB2_DEFERRED_PREPARE_SEMANTICS=YES $ db2stop force $ db2start $ db2 "create db testdb automatic storage yes on /db2data1, /db2data2,/db2data3 DBPATH ON /db2system PAGESIZE 32 K" $ db2 update db cfg for testdb using auto_reval deferred_enforce $ db2 update db cfg for testdb using decflt_rounding round_half_up C:\> db2 update db cfg for testdb using decflt_rounding round_half_up 在Windows 上: C:\> db2set DB2_COMPATIBILITY_VECTOR=ORA C:\> db2set
DB2_DEFERRED_PREPARE_SEMANTICS=YES C:\> db2stop force C:\> db2start C:\> db2 "create db testdb automatic storage yes on C:,D: DBPATH ON E: PAGESIZE 32 K" C:\> db2 update db cfg for testdb using auto_reval deferred_enforce C:\> db2 update db cfg for testdb using decflt_rounding round_half_up 然后是将 Oracle 数据库对象和数据迁移到 DB2。
DB2 9.7 提供的原生 Oracle PL/SQL 和 Oracle SQL 支持极大地简化了这一过程。
现在我们先来看一个简单的示例,这个例子选自 Oracle 来演示 PL/SQL 中 CASE 语句的使用,例子如下: set serveroutput on Drop function Get_Grade3; create or replace function Get_Grade3(score IN NUMBER RETURN VARCHAR2 is begin -- use a Searched CASE Statement to find the Grade for the -- score passed in as a parameter CASE WHEN score BETWEEN 80 AND 100 THEN return 'A'; WHEN score BETWEEN 65 AND 79 THEN return 'B'; WHEN score BETWEEN 50 AND 64 THEN return 'C'; WHEN score BETWEEN 40 AND 49 THEN return 'D'; WHEN score BETWEEN 0 AND 39 THEN return 'F'; --Comment the ELSE leg to generate the exception --ELSE return 'Invalid score'; END CASE; exception when CASE_NOT_FOUND then return 'Exception - Case Not Found for score - '|| score; end Get_Grade3; / select Get_Grade3(-1 from dual / C:\> db2 update db cfg for testdb using decflt_rounding round_half_up 把这段代码保存在本地计算机的 D 盘下面为casetest.sql,在 DB2 的 CLP plus 中运行一下,居然一点都不需要修改就运行成功了,运行的结果如下:这说明 DB2 对 Oracle 的兼容性的支持已经达到了一个很好
的程度了。
但是并不是所有程序都可以这么幸运的无需要修改就能正确的运行的。
为了能够更好的完成迁移工作,还是需要了解两者之间特性的范围,以便我们能够更好的进行修改工作。
在这里就不做说明了,大家可以去网上找找。
Oracle 向 DB2迁移工具 1. IBM DB2 Migration Toolkit 利用免费的 IBM DB2 Universal Database(UDBMigration Toolkit(MTK简化和改进向 DB2 UDB 的迁移工作。
这个新的迁移实用程序提供了向导和易于使用的五步界面,这些有助于您快速地将现有的 Sybase、 Microsoft SQL Server和Oracle数据库对象转换到 DB2 通用数据库。
使用 MTK,可以将数据类型、表、列、视图、索引、存储过程和触发器自动地转换
成等价的 DB2 数据库对象。
MTK 向数据库管理员(DBA和应用程序程序员提供了使迁移任务自动化所需要的工具,而以前这些任务不但效率低下而且开销巨大。
通过使用 MTK 中的以下特性,您可以减少停机时间、消除人为错误,以及降低人工和与传统数据库迁移相关联的其它资源消耗。
MTK 可运行于 AIX、Linux、Solaris 和 Windows 操作系统上。
2. IBM Data Movement Tool 利用 DB2 兼容特性和 IBM 提供的免费数据迁移工具 Data Movement Tool,快速地将现有的Oracle 数据库对象转换到 DB2 通用数据库。
同时对应用中使用到的数据库访问语言以及接口进行转换,最终实现整个应用系统的完整迁移。
3. IBM Optim Development Studio IBM Optim Development Studio,它为 Oracle、DB2 和Informix 提供一个集成的数据库开发环境。
Optim Development Studio 在开发和测试 SQL 和 XQuery 查询、存储过程、Web 服务和 Java 数据访问层方面将生产力提高了 50%,而且允许在不同或者相同的数据服务器中的数据对象包、存储过程、表、用户自定义函数、用户自定义类型、视图、模式等的复制粘贴。
这三款工具都是来自于IBM官方的,大家有需要可以进去官方下载。
总结以上只是简单的介绍了下迁移的流程和常用的工具,总的来说,迁移过程是一个复杂的过程,中间可能出现很多意想不到的情况,遇到问题,先查资料寻求解决方法,要有细心和耐心!我们在做迁移时,一定要做好备份,测试工作。
而迁移工具只是一个辅助作用,如果单靠迁移工具是远远不够的。