数据库迁移之从oracle 到 MySQL
方式一: 手动方式导入导出
手动的方式导入, 就是操作步骤会比较繁琐一些。
对Table 的结构和数据:
1. 使用 SQL Developer 把 oracle 的 table 的schema 和 Data(.sql 和 .xls) 导出
2. 使用 MySQL 的 WorkBench 创建 Table 和导入数据。
这里语法上会稍微有一些不同, 所以需要略微做一些调整。
对于View 来说, 特别是复杂的有子查询的Oracle View 说, 要导入到MySQL 看起来就不是那么容易了。
方式二: 使用工具Navicat 进行导入
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 提供的很类似。好处是能记住上次的一些连接信息。
同样只能对表进行导入。
导入的页面:
数据库迁移之从oracle 到 MySQL的更多相关文章
- 数据库迁移之从oracle 到 MySQL最简单的方法
数据库迁移之从oracle 到 MySQL最简单的方法 因工作需要将oracle数据库换到MySQL数据库,数据量比较大,百万级别的数据,表也比较多,有没有一种既快捷又安全的方法呢?答案是肯定的,下面 ...
- FW 数据库迁移之从oracle 到 MySQL
方式一: 手动方式导入导出 手动的方式导入, 就是操作步骤会比较繁琐一些. 对Table 的结构和数据: 1. 使用 SQL Developer 把 oracle 的 table 的schema 和 ...
- 数据库 --> SQL Server 和 Oracle 以及 MySQL 区别
SQL Server 和 Oracle 以及 MySQL 区别 三者是目前市场占有率最高(依安装量而非收入)的关系数据库,而且很有代表性.排行第四的DB2(属IBM公司),与Oracle的定位和架构非 ...
- 关系和非关系型数据库区别(以及oracle和mysql的区别)
一.关系型数据库 关系型数据库,是指采用了关系模型来组织数据的数据库. 关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐 ...
- JIRA数据库的迁移,从HSQL到MYSQL/Oracle
Jira数据库迁移,从HSQL到MYSQL 通过JIRA管理员登录,进入“管理员页面”,“系统”--“导入&导出”,以XML格式备份数据. 在MySQL中创建Schema,命名为jira 关闭 ...
- MySQL数据库迁移(转)
MySQL数据库迁移(数据文件直接迁移) 在今年10月下旬的时候,公司的服务器需要迁移,其中涉及到了MySQL数据库迁移.查看了一下MySQL数据文件的大小,接近60G的大小(实际数据并没用那么多). ...
- 数据库开发 Oracle与mysql间的批量处理接口 SSIS+存储过程实现
公司目前不同的业务系统用了不同的数据库,涉及到oracle.mysql.sqlserver.而一些核心的业务在mysql中,所以平时经常要把oracle.sqlserver中的数据插入到mysql中. ...
- 如何使用FluentMigrator进行数据库迁移
标题:如何使用FluentMigrator进行数据库迁移 地址:https://www.cnblogs.com/lwqlun/p/10649949.html 作者: Lamond Lu FluentM ...
- Oracle与MySQL的概念区别
MySQL MySQL是一个以用户为中心的概念,一个用户下,拥有多个数据库,一个数据库下拥有多个数据库表!然而Oracle与MySQL有很大的不同!! Oracle Oracle中,一个数据库拥有多个 ...
随机推荐
- ORACLE的安装与网页版创建表空间的简单操作以及PLsql的简单操作
1.oracle的安装: 安装简单易学,在这里不做解释.下载看装包后耐心等待,注意安装目录不要有中文字符,尽量按照指定目录进行安装.安装完成后会占用有大约5g的内存. 如果要卸载oracle,需要用其 ...
- Delphi出现“borland license information was found,but it is not valid for delphi”的错误,无法运行的解决方法
1) 删除文件: C:\documents and settings\<username>\.borland\registry.slm,如果在win8或在win7下,即C:\Users\H ...
- [转]如何编写和应用Java的自定义异常类
编写自定义异常类实际上是继承一个API标准异常类,用新定义的异常处理信息覆盖原有信息的过程.常用的编写自定义异常类的模式如下: public class CustomException exten ...
- 【转】下载量最高的 100 个 Laravel 扩展包推荐
说明 Laravel 另一个令人喜欢的地方,是拥有活跃的开发者社区,而活跃的开发者社区带来的,是繁华的扩展包生态. 本文对 Packagist 上打了 Laravel 标签 的扩展包进行整理,截止到现 ...
- Java Blocking Queue
//Listing 8-1. The Blocking Queue Equivalent of Chapter 3’s PC Application import java.util.concurre ...
- jquery全选+下拉+单选+事件+挂事件
1.全选 <body> <input type="checkbox" id="qx" /> 全选 <input type=&quo ...
- linux实现c多进程
线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者.传统的Unix也支持线程的概念,但是在一个进程(process)中只允许 ...
- javaScript没有块级作用域
1.如下,变量i,j,k 的作用域是相同的. function test(obj){ var i= 0; if(typeof obj == "object"){ var j = 0 ...
- {$ecs_css_path}
includes里的init.php的187-194行 if (!empty($_CFG['stylename'])) { $smarty->assign('ecs_css_path', 'th ...
- Hibernate报错解决Error parsing JNDI name [],Need to specify class name
能实现写数据,但是报错. 出错信息: 十月 21, 2016 3:46:18 下午 org.hibernate.Version logVersionINFO: HHH000412: Hibernate ...