将 Sybase 12.5 迁移至 Oracle 11g

原创 2015年11月19日 16:53:40

目的

本教程展示了如何使用Oracle SQL Developer将 Sybase12.5 迁移到 Oracle 11 g(脱机捕获,仅包含表和数据)。

  • 引用了Oracle教程:Sybase 迁移

http://www.oracle.com/technetwork/cn/products/migration/sybase-085571-zhs.html#start


主题(主要操作步骤)

 - 概述
 - 先决条件
 - 创建mwrep用户
 - 创建迁移库
 - 捕捉Sybase导出文件
 - 检查转换和离线数据移动的偏好
 - 转换Oracle模型
 *(- 解决存储过程转换失败)
 *(- 解决存储过程转换限制)
 - 生成和执行脚本创建Oracle数据库对象
 - 迁移数据
 *(- 解决编译问题)
 *(- 运行时问题的解决)
 - 测试转移的表和数据

*(-xxx):本教程未涉及的操作步骤


概述

什么是 Oracle SQL Developer?
Oracle SQL Developer是一个免费的图形工具,提高工作效率,简化了数据库开发任务。使用Oracle SQL Developer可以浏览数据库对象,运行SQL语句,编辑和调试PL / SQL语句和运行报告。
使用Oracle SQL Developer迁移工作台,可以快速迁移第三方数据库至Oracle。

数据库迁移过程中有四个主要步骤:

这里写图片描述


先决条件

在执行本教程之前,应该拥有以下先决条件:

  1. 安装Oracle 10g或更高版本,或Oracle Database XE
  2. 下载Oracle SQL Developer
  3. 安装并创建了ASE数据库并包含数据(用于测试)
  4. 已知Sybase的用户名,密码,数据库名和服务名
    (本机信息:User: sa,Pwd: “”,Dbname: ASE1119t,Server: KEVINCISA)

创建mwrep用户

1.登录Oracle SQL Developer,创建一个system用户的连接

这里写图片描述

2.登录该连接,打开新的SQL脚本窗口执行以下语句,以创建mwrep用户并赋予权限

这里写图片描述

CREATE USER MWREP 
IDENTIFIED BY mwrep 
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP;
GRANT CONNECT, RESOURCE, CREATE SESSION, CREATE VIEW TO MWREP;

3.连接并以mwrep用户登录

这里写图片描述


创建迁移库

1.右键单击mwrep_orcl连接并选择“移植资料档案库>关联移植资料档案库”

这里写图片描述

关联进程:

这里写图片描述

这里写图片描述

这里写图片描述

完成关联后,左边菜单栏为出现以下界面:

这里写图片描述


捕捉Sybase导出文件

1.创建数据库捕获脚本:“选择菜单栏中的移植>第三方数据库脱机捕获>创建数据库捕获脚本”

这里写图片描述

2.选择脚本路径和数据库版本,并生成

这里写图片描述

生成提示:

这里写图片描述

3.捕获Sybase数据库

这里写图片描述

4.使用命令提示符移至脚本目录,执行脚本:[script file] [username] [password] [dbname] [server name]

SYB12_OFFLINE_CAPTURE.BAT sa "" ASE1119t KEVINCISA
执行成功提示

这里写图片描述

在捕获文件夹中会出现master和ASE1119t的文件夹以及文件夹内生成了相应数据库dat文件:

这里写图片描述

5.加载已经捕获了数据库的脚本

这里写图片描述

6.选中“sybase12.ocp”
这里写图片描述

加载完毕:

这里写图片描述

在捕获的模型处会显示已经捕获的模型:

这里写图片描述


检查转换和离线数据移动的偏好

按照以下偏好设置转换选项:

1.标识符选项:去掉“启用加引号的标识符”的勾选

这里写图片描述

2.生成选项:勾选下列选项

这里写图片描述

3.更改:脱机日期掩码和时间戳掩码

将日期掩码更改为:

Mon dd yyyy HH:mi:ssAM

将时间戳掩码更为:

Mon dd yyyy HH:mi:ss:ff3AM

这里写图片描述


转换Oracle模型

1.右击捕获模型中的Sybase12,点击“转换为Oracle模型”

这里写图片描述

转换完成:

这里写图片描述

转换的模型中显示了已转换的Oracle模型:

这里写图片描述


## (- 解决存储过程转换失败) ##*
## (- 解决存储过程转换限制) ##*


生成和执行脚本创建Oracle数据库对象

1.右键单击“转换的模型>Sybase12”并选择“生成

这里写图片描述

生成Oracle数据对象成功:

这里写图片描述

2.使用system用户编译生成的SQL语句

这里写图片描述

3.SQL语句创建了相应的用户,使用该用户连接登录

这里写图片描述

该用户中包含了从Sybase转换来的表结构,但是不包含数据:

这里写图片描述


迁移数据

1.生成数据移动脚本:“转换的模型>Sybase12”,右击“生成数据移动脚本”

这里写图片描述

2.选择脚本的存放路径

这里写图片描述

3.脚本生成后提示(包含捕获表的数量)

这里写图片描述

脚本文件夹下相应生成了Sybase的数据文件:

这里写图片描述

4.在脚本文件夹下,使用脚本unload_script.bat在命令提示符下获取Sybase的数据:
[script file] [username] [password] [server name]

unload_script.bat sa "" KEVINCISA

这里写图片描述

数据导出成功:

这里写图片描述

5.在将数据导入Oracle之前,先修改一下导入脚本oracle_ctl.bat对应的Oracle用户名和密码

这里写图片描述

6.执行数据导入脚本

这里写图片描述

导入成功提示:

这里写图片描述

7.回到Oracle SQL Developer,刷新表,得到导入的数据

这里写图片描述


## (- 解决编译问题) ##*
## (- 运行时问题的解决) ##*


测试转移的表和数据

转移至PL/SQL Developer下查看导入的用户,表以及数据(个人习惯)

这里写图片描述


*由于本人不是很熟悉Sybase,关于存储过程以及其他函数的转换就不写了,只是转移了表和数据。

版权声明:by o_wing

相关文章推荐

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

sybase数据库的两种简单迁移方法

新上了一套sybase数据库,需要做数据迁移工作,由于可以申请周末停机时间,因此可以选择如下两种方案,方法都比较简单,同sqlserver很类似 方法1:dump和load方法,本质上是备份...
  • hijk139
  • hijk139
  • 2014年02月28日 10:52
  • 6709

oracle 导入到sybase

http://www.blogjava.net/xiaodaoxiaodao/archive/2007/06/11/123488.html  oracle导入到sybase   ...
  • paluo
  • paluo
  • 2010年10月30日 15:30
  • 2817

Sybase如何如在isql查看proc的内容和table各个字段的详细信息

项目中有的客户是sysbase版本的,所以必要的sybase knowledge还是必须的。     在isql中执行:sp_helptext 存储过程名      可以查看存储过程的内容。     ...

Informatica 初学日记全(转载)

1. INFORMATICA CLIENT的使用 1.1 Repository Manager 的使用 1.1.1 创建Repository。 前提: a. 在ODBC数据源管理器中新建一...

oracle 11g R2 单实例 ASM 数据库数据磁盘组迁移

oracle 11g R2 单实例 ASM 数据库数据磁盘组迁移      在使用ASM作为数据库存储的时候,可能往往我们会因为某些原因,会考虑将数据的存储数据迁移到一个新的磁盘组。 例如:创建数据...

oracle 11g 传输表空间(数据迁移)

环境情况 Source 端: 操作系统: OracleLinux 6.2 64位 endianness格式: little 数据库版本:11.2.0.3   Target ...

用 SQL Developer 3.2 将 SQL Server 2008 数据库离线迁移到 Oracle 11g

在做离线迁移时,按照帮助文档,mssqlservermigration.zip是直接下载的,怎么生成OCP等内容的在其它页面。导入数据前需先执行数据导出脚本。本文补充了这两部分操作命令。主要操作步骤和...
  • rootcn
  • rootcn
  • 2013年05月07日 11:00
  • 3308
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:将 Sybase 12.5 迁移至 Oracle 11g
举报原因:
原因补充:

(最多只允许输入30个字)