数据库迁移之从oracle 到 MySQL

方式一: 手动方式导入导出

手动的方式导入, 就是操作步骤会比较繁琐一些。

对Table 的结构和数据:

1. 使用 SQL Developer 把 oracle 的 table 的schema 和 Data(.sql 和 .xls) 导出

2. 使用 MySQL 的 WorkBench 创建 Table 和导入数据。

这里语法上会稍微有一些不同, 所以需要略微做一些调整。

对于View 来说, 特别是复杂的有子查询的Oracle View 说, 要导入到MySQL 看起来就不是那么容易了。

方式二: 使用工具Navicat 进行导入

http://www.navicat.com.cn

Navicat , 这是MySQL 官方网站上有人建议使用的工具。 这是一个收费的软件。 目前的收费是 1000 到1600 人民币。 但是可以免费试用一个月。

下载安装后, 启动的页面如下:

迁移的流程如下:

1. 新建数据库的连接

建立需要迁移的Oracle 和 MySQL 的数据库连接。

另外, 建立Oracle 连接的时候还需要下载一个oci.dll 的文件。

下载地址:

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

下载之后, 解压到某个目录:

在 Navicat  的 工具 --> 选项 下做类似如下设置:

细部可以参见:

http://wiki.navicat.com/wiki/index.php/Instant_client_required

完成设置后, 重启 navicat

2.  设置过连接之后, 接下来就可以进行表和数据的migrate 了

点击: 工具 --》 数据传输

在 "常规" 的标签页中设置需要 migrate 的连接

在 “高级” 的标签页中 , 设置需要 migrate 哪些具体的内容:

配置完成之后, 点 "开始" 就可以了。

基本上: 对于 Table 的结构和数据的迁移的话, 基本上没什么问题。

但是对于 View 的导入, 因为MySQL 的View 的语法不能有子查询语句。

在Navite 上, 可以看到从 Oracle 导入到 MySQL 的时候, View 的Checkbox 不能选取。

方式三: 使用工具DBMover 的OracleToMySQL 进行导入

DBMover这个网站也提供了 Oracle 到 MySQL 迁移的工具。

下载地址是:

http://dbmover.com/download/oracletomysql_cn.zip

这也是一个收费的软件,  试用版的限制是: 允许迁移的记录条数累计为10万条。

下载安装,启动后会先要求输入 数据库连接的信息:

一直配置完成之后的页面是:

这里就只能看到table 了。

和Navicat比较起来, 感觉这个显得简单, 只能migrate table , 而且使用上也不是很方便。

下一次Migrate 又得重头到尾输入一次, 没办法记住之前配置的连接。

方式四: 使用工具intelligent-converters 的 oracle-to-mysql 进行导入

同样是一个收费的工具:

下载地址:

http://www.intelligent-converters.com/oracle-to-mysql.htm

使用版的限制是每个table 只能导入 5 笔数据。

操作方式上和DbRemover 提供的很类似。好处是能记住上次的一些连接信息。

同样只能对表进行导入。

导入的页面:

时间: 2024-10-03 19:39:38

数据库迁移之从oracle 到 MySQL的相关文章

数据库迁移之从oracle 到 MySQL最简单的方法

数据库迁移之从oracle 到 MySQL最简单的方法 因工作需要将oracle数据库换到MySQL数据库,数据量比较大,百万级别的数据,表也比较多,有没有一种既快捷又安全的方法呢?答案是肯定的,下面介绍一个工具,非常的好用 需要的工具:Navicat Premium  Navicat Premium 原本是收费的,但是网上也有很多绿色版(盗版)的,本人亲测,也挺好用的,土豪可以忽略这句话. 第一步: 安装Navicat Premium,打开软件,建立数据库的链接,一个是原oracle数据库的链

DB2数据库迁移数据到Oracle数据库

刚到公司后,领导交给我个任务:把DB2数据库中的数据导入到Oracle数据库,本人尝试以下方法,挺快的.还要导入db2jcc.jar.db2jcc_license_cu.jar.ojdbc14.jar三个相应的jar包. 数据迁移:1.在DB2数据库中通过以下表查询出表的结构SELECTTABNAME TAB, --表英文名称COLNAME COL, --列名称CASE WHEN TYPENAME='VARCHAR' THEN 'VARCHAR2'WHEN TYPENAME LIKE 'SMAL

数据库常用函数(oracle和MySQL)

distinct : 去重复 MySQL : ①IFNULL(字段,0) :作用是 值为 NULL 则 ISNULL() 返回 0. COALESCE(字段,0)与IFNULL(字段,0)用法一致. group by 必须放在 order by 和 limit之前. oracle : ①nvl(字段,0) :作用是 值为 NULL 则 ISNULL() 返回 0.其中0也可以是字段 ②case when 条件1 then 结果1 when 条件2 then 结果2 else 结果3 end 作用

MySQL数据库迁移(转)

MySQL数据库迁移(数据文件直接迁移) 在今年10月下旬的时候,公司的服务器需要迁移,其中涉及到了MySQL数据库迁移.查看了一下MySQL数据文件的大小,接近60G的大小(实际数据并没用那么多).由于服务器上业务需要,要尽量减少服务器迁移时的损失.所以迁移时间选在了晚上零点开始,而且要尽量减少迁移所用的时间. 在迁移之前有三种方案: 数据库直接导出,拷贝文件到新服务器,在新服务器上导入. 使用[MySQL GUI Tools]中的 MySQLMigrationTool. 数据文件和库表结构文

数据库开发 Oracle与mysql间的批量处理接口 SSIS+存储过程实现

公司目前不同的业务系统用了不同的数据库,涉及到oracle.mysql.sqlserver.而一些核心的业务在mysql中,所以平时经常要把oracle.sqlserver中的数据插入到mysql中. 这部分最开始用的是 实时接口,java实现的,不过随着mysql里业务逻辑越来越多,数据量噌噌的增长,对实时接口的响应时不时的会出问题.所以决定改用批量处理接口,每2个小时传一次数据. 废话少说,我简化了其中一块接口,画了实现的流程图.从图中直接看出我用SSIS+存储过程实现的.SSIS只用来传数

数据库迁移之-Oracle 与MySQL互相转换

理论上来说, MySQL 已经被Oracle 收购, 这两者之间的Migrate 应该比较容易, 但实际的迁移还是有一些问题, 以下就说一说一些实现的方式和问题. 方式一:手动方式导入导出 手动的方式导入, 就是操作步骤会比较繁琐一些. 对Table 的结构和数据: 1. 使用 SQL Developer 把 oracle 的 table 的schema 和 Data(.sql 和 .xls) 导出 2. 使用 MySQL 的 WorkBench 创建 Table 和导入数据. 这里语法上会稍微

Oracle数据库迁移-基础

Oracle数据库迁移-基础 作为一个开发人员,数据库知识肯定是需要我们掌握的.但是目前公司的数据库都是有专门的DBA维护的,一般都是给我们一个环境地址,然后我们书写CRUD SQL.而且公司产品要求是可以跨数据源的,这样平时基本上都不太关心特定数据库平台的操作.结果导致自己的DB知识严重不足.今天因为一些原因,需要在外网服务器上搭建演示环境,结果需要"悲剧"的自己操作数据库. 任务:在外网服务器上搭建演示环境,包括服务器.代码.数据库.     解决方案: (1)找一个新的产品安装程

Linux Yum安装mysql的数据库迁移目录

Linux Yum安装mysql的数据库迁移目录 前言:因公司数据库目录存储满了,无法加空间进行更换数据目录Warning:更换数据目录之前先问一下有么有在用,或者又没用风险之类的,如果数据库有读写或者其他操作建议晚上进行操作.1.停用MySQL数据库 [[email protected] ~]# systemctl stop mysqld 2.查看数据现存目录迁移至所需目录 [[email protected] ~]# cat /etc/my.cnf | grep datadir datadi

Oracle数据库迁移的几种方式

面试: 一.exp/imp逻辑备份与恢复: 二.Storage存储迁移: 将数据文件.控制文件.日志文件.spfile挂到新机器上,然后在新机器上启动数据库. 三.利用data guard迁移: 四.用rman做迁移: 我们常常需要对数据进行迁移,迁移到更性能配置更高级的主机OS上.迁移到远程的机房.迁移到不同的平台下,以下介绍ORACLE的几种数据库迁移方案: 一.exp/imp逻辑备份与恢复:  它是最常用最简单的方法,一般是基于应用的owner级做导出导入.  操作方法为: 在新库建立好o