kavin

mysql数据库如何转移到oracle

kavin Shell 2023-02-27 1503浏览 0

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的表目录下,然后点击确定拷贝表结构和数据即可!

如下图:

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)再将双引号也替换为空,

替换后如下图:

mysql数据库如何转移到oracle

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

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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

继续浏览有关 数据库技术文章/教程 的文章
发表评论