mysql数据库转移到oracle

在研发过程中,可能会用到将表数据库中的表结构及数据迁移到另外一种数据库中,

比如说从mysql中迁移到oracle中,

常用的方法有好些,如下:

1、使用powerdesigner,先连接mysql然后生成mysql的pdm,再把mysql的pdm生成cdm(注:如果设计阶段有cdm那更好,可以直接使用,因为cdm是和具体数据库类型无关的,所以需要转为这个中间模型),最后把cdm生成oracle类型的pdm,最后将oracle类型的pdm转为sql文件完成!

 

2、在使用上面第一种方法的时候可能会失败,失败的原因有很多种,不具体写了,

如果失败了,还可以使用第二种方法,懒人方法,使用Navicat Premium这个工具,Navicat Premium这个工具有个拖拉的功能,

即:在Navicat Premium上连接mysql和oracle,选择mysql中的表,然后拖拉到oracle的表目录下,然后点击确定拷贝表结构和数据即可!

如下图:

 

3、在使用上面第二种方法的时候数据库表及数据可能是拷贝成功了,但是在使用的时候,直接查询表,

如:select * from sys_role  可能会提示表不存在,这是因为拷贝过去的时候会自带oracle用户及双引号,

所以需要这样查询:select * from "C##SWYTH_YS"."SYS_ROLE"; 

如果要去除这些双引号之类的直接查询,可以这么玩:

在第二中方法的基础上,使用Navicat Premium将已经拖拉拷贝到oracle数据库的表及数据导出到sql文件中(即:从oracle中导出),然后在导出的sql文件中修改sql脚本语句,主要修改两个地方(全文替换),很简单的,

1)将"C##SWYTH_YS"."   就把用户替换为空,

2)再将双引号也替换为空,

替换后如下图:

替换完成后!就很清爽了,然后把已有的oracle表删掉,把修改后的sql文件脚本重新导入,这样就可以正常使用sql查询了!


4、以上三种方式数据量小的话可以这么玩,如果数据很大就比较麻烦了,有可能失败,网上也提供了一些直接转换的小工具下载,可以搜索试试,实在不行就只能一个一个表的单独修改了,先修改表结构,再拷贝数据;

 

  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值