您好,欢迎访问三七文档
使用Oracle移植工作台从MicrosoftSQLServer移植到Oracle数据库10g目的本模块介绍了如何使用Oracle移植工作台从MicrosoftSQLServer数据库移植到Oracle数据库10g。所需时间大约2个小时主题本教程将讨论下列主题:概述情景前提条件安装和配置Oracle移植工作台创建源模型创建Oracle模型自定义Oracle模型将表空间、用户以及用户表移植到目标数据库中将数据移植到目标数据库中将其余模式对象移植到目标数据库中验证成功移植了存储过程和触发器生成和查看Oracle移植工作台报告总结概述Oracle移植工作台是什么?Oracle移植工作台是一种简化从第三方数据库系统到Oracle平台(Oracle9i和Oracle数据库10g)移植过程的工具。Oracle移植工作台在集成环境中移植整个数据库模式(包括触发器和存储过程)。通过Oracle移植工作台,您可以:使用向导和脚本在各个阶段进行移植使用联机捕获或脱机捕获检索源数据库信息自定义信息库中的WorkInProgress数据库对象分析存储过程、触发器以及视图,并将它们转换为OraclePL/SQL通过报告和消息监视移植的状态。Oracle移植工作台从源数据库库(如SQLServer)提取信息,并创建Oracle目标数据库。为了移植不同的源数据库,Oracle移植工作台针对其所能移植的每一个数据库使用专门的插件。通过脱机捕获方法,Oracle移植工作台从源数据库检索元数据,并将它们存储到您载入到工作台信息库的一组文件中。工作台信息库是Oracle数据库中的一组表,包含有关移植的所有信息。工作台信息库由源模型(表示源数据库)和Oracle模型(表示Oracle数据库)组成。您可以在工作台信息库对源模型和Oracle模型进行修改,而不会影响生产环境。情景在本教程中,您要将SQLServer2000(源数据库)中的HR数据库移植到Oracle数据库10g(目标数据库)中。本教程为您提供脱机捕获文件,这些文件是从MicrosoftSQLServer2000源数据库中提取的元数据。创建和自定义源模型和Oracle模型后,您可以移植模式对象并使用SQL*Loader脚本移植表数据。前提条件开始本教程之前,您应该:1.在Windows资源管理器中,导航到DVD中的Oracle_Migration_Workbench文件夹,将omwb_windows.zip解压缩到本地驱动器上的文件夹中(如c:\omwb)。2.取消offline_capture子文件夹中文件的只读属性。i)定位offline_capture_files子文件夹,右键单击并选择属性。ii)在“属性”中,取消选择“只读”并单击应用。iii)接受默认选项“将更改应用于该文件夹、子文件夹及文件”,然后单击确定。iv)单击确定。3.访问Oracle数据库10g第2版数据库。4.将VMwareWorkstation中的共享文件夹vmware_shared设置为主机文件夹中的c:\vmware_shared。安装和配置Oracle移植工作台开始使用Oracle移植工作台之前,您将在目标数据库中安装工具、创建信息库以及创建用户及相关的表空间。安装Oracle移植工作台创建Oracle移植工作台信息库在目标Oracle数据库中创建omwb_user在目标Oracle数据库中创建sa表空间安装Oracle移植工作台执行以下步骤:1.导航到c:\omwb文件夹,双击omwb_w2k.zip将文件解压缩到c:\omwb文件夹中。注意:创建了一个omwb子文件夹(如c:\omwb\Omwb)。2.复制c:\omwb\SQLServer2K.jar文件并将其粘贴到c:\omwb\Omwb\plugins中。返回主题创建工作台信息库执行以下步骤:1.要启动Oracle移植工作台,打开命令提示符窗口并输入:cdc:\omwb\Omwb\binomwb.bat2.打开OracleWorkbenchRepositoryLogin窗口。选择DefaultRepository并单击OK。3.首次登录Oracle移植工作台时,将出现一个弹出窗口,提示信息库不存在。单击Yes创建信息库。4.CreateMigrationRepository窗口显示创建信息库的进度。出现Repositorysuccessfullycreated.消息时,单击Close。5.在SelectMigrationSource窗口中,单击OK选择MicrosoftSQLServer2000PlugIn。6.打开两个窗口:OracleMigrationWorkbench和CaptureWizard:欢迎。在CaptureWizard中单击Cancel:欢迎窗口。返回主题在目标Oracle数据库中创建omwb_user执行以下步骤:1.如果还未创建该用户,登录运行VMWARE、作为oracle/oracle的Linux操作系统。打开一个终端窗口,然后输入以下命令:cd/home/oracle/wkdirsqlplussys/oracleassysdba2.执行c_omwb_user.sql脚本,在Oracle数据库中创建Oracle移植工作台用户。startc_omwb_user该脚本执行以下语句:dropuseromwb_usercascade;CREATEUSERomwb_userIDENTIFIEDBYomwb_user;GRANTCONNECT,RESOURCE,CREATEPUBLICSYNONYMTOomwb_userWITHADMINOPTION;GRANTALTERANYROLE,ALTERANYSEQUENCE,ALTERANYTABLE,ALTERTABLESPACE,ALTERANYTRIGGER,COMMENTANYTABLE,CREATEANYSEQUENCE,CREATEANYTABLE,CREATEANYTRIGGER,CREATEROLE,CREATETABLESPACE,CREATEUSER,DROPANYSEQUENCE,DROPANYTABLE,DROPANYTRIGGER,DROPTABLESPACE,DROPUSER,DROPANYROLE,GRANTANYROLE,INSERTANYTABLE,SELECTANYTABLE,UPDATEANYTABLETOomwb_user;GRANTcreateviewtoomwb_userwithadminoption;返回主题在目标数据库中创建SA表空间执行以下步骤:1.在运行VMWare的Linux操作系统中,单击桌面上的EnterpriseManagerDatabaseConsole图标,启动企业管理器数据库控制台。2.在EnterpriseManagerDatabaseControlLogin页面中,输入以下信息:Username:sysPassword:oracleConnectAs:sysdba单击Login。3.在Home页面中单击Administration选项卡。4.在Storage标题下面,单击Tablespaces链接。5.单击Create按钮。6.在General选项卡中,输入表空间名:sa并单击页面底部的Add按钮。7.在AddDatafile页面中,将FileSize设置为30MB,然后单击Continue按钮。8.在General选项卡中,单击OK创建表空间。9.注意:已创建SA表空间。该表空间将用于存储所移植的对象。VCFEDSXCFGVB10.单击ClusterDatabase:RACDB链接返回到Administration页面。返回主题创建源模型现在,您将使用脱机捕获文件创建源模型、检查日志文件以及自定义源模型。使用脱机捕获文件创建源模型检查日志文件自定义源模型返回主题列表使用脱机捕获文件创建源模型要使用脱机捕获文件在工作台信息库中创建源模型,执行以下步骤:1.在OracleMigrationWorkbench窗口中,选择ActionCaptureSourceDatabase。2.检查Welcome页面并单击Next。3.在SourceModelLoadDetails页面中,选择OfflineSourceModelLoad并单击Next。4.单击Load。出现SelectRootDirectory页面。5.导航到c:\omwb\offline_capture_files目录,然后单击OK。6.加载元数据文件列表。单击Next。7.在DataTypeMappings页面中,检查数据类型映射。单击Next。8.在CreateOracleModel页面中选择No,以使您可以首先浏览和自定义源模型。单击Next。9.在Summary页面中,单击Finish。10.出现LoadingSourceModel窗口,同时显示各种消息。在LoadingSourceModel弹出消息窗口中,单击OK。11.检查日志消息,单击OK关闭LoadingSourceModel弹出消息窗口。返回主题检查日志文件要检查日志文件,执行以下步骤:1.要更改日志显示设置,在OracleMigrationWorkbench窗口中选择ToolsOptions。2.单击Logging选项卡。3.取消选择以下选项:InformationalMessagesSummaryMessagesDebugMessages。单击OK。4.选择ToolsLogWindow再次检查日志消息。5.Log窗口内容更改,仅显示错误和警告。关闭窗口。6.在窗口的左侧面板中,展开以下节点:Databaseshr。7.注意源模型中以下数量的数据库对象:8个表4个存储过程2个触发器返回主题自定义源模型您将通过删除不移植到Oracle数据库中的MSSQLServer管理组来自定义源模型。执行以下步骤:1.展开Groups/Users节点。2.选择db_owner节点以上的所有组(使用单击和按住shift单击),然后选择ObjectDelete。3.单击Yes确认删除7个选定项目。4.再次展开这些节点:DatabaseshrGroups/Users。5.选择db_securityadmin角色,右键单击并选择Delete。6.单击Yes确认删除。7.导航到DatabaseshrGroups/Usersdb_owner并单击dbo。在窗口右侧,您看到该角色被指派给sa登录。移植用户时,Oracle移植工作台将创建相应的sa用户帐户。返回主题创建Oracle模型创建Oracle模型为触发器解决分析器错误解决存储过程的分析器错误重新创建Oracle模型返回主题列表创建Oracle模型执行以下步骤:1.选择ActionCreatetheOracleModel。2.单击Yes确认要创建Oracle模型。出现带有许多消息的CreatingOracleModel窗口。3.完成Oracle模型时,注意有4个错误。您将在以下后续步骤中解决这些分析器错误。单击OK。4.注意,在Oracle模型中不创建以下对象:SECURE_EMPLOYEES触发器EXAMPLE3存储过程。再次单击OK关闭CreatingOracleModel窗口。返回主题为触发器解决分析器错误执行以下步骤解决SECURE_EMPLOYEES触发器的分析器错误:1.从菜单中选择ToolsLogWindow。2.双击SECURE_EMPLOYEES触发器的第一个错误。打开SECURE_EMPLOYEES窗口,光标位于该错误之上。3.执行以下操作:在INSTEADOF前面输入--(2个连字符)在单词FOR前面删除注释符号--(2个连字符)。单击OK。4.要重新分析SECURE_EMPLOYEES触发器,在SQLServer2000SourceModel选项卡中导航到DatabaseshrTrigg
本文标题:使用Oracle 移植工作台从 Microsoft SQL Server 移植到 Oracle 数据
链接地址:https://www.777doc.com/doc-13692 .html