https://blog.csdn.net/qq_28194001/article/details/79124090
最近新进的一个项目组中,需要将表结构从Oracle数据库迁移到Mysql,但是由于手动转换过于麻烦,而且表字段动辄几十上百个,在网上搜索了使用PowerDesigner进行转换的方法,并进行实践。记录于此,便于寻找。
工具:
- PowerDesigner16.5.0.3982
- Oracle数据库连接工具,只要能获取到表结构即可,我使用的是PLSQL 12
转移的步骤如下:
- 我们要获取Oracle中的表并将其导出为sql文件
- 打开PowerDesigner创建一个Model
- 选择数据库类型及导入sql
- 转换并导出转换后的sql
在Oracle导出表的sql文件,由于Oracle中表有对应的用户权限,通常我在导出之后 会将表的用户权限删除,如图中的HR.(替换所有HR.为空)
![](https://i-blog.csdnimg.cn/blog_migrate/0ec5ccd2083dc321ef2d7f096ac1a674.png)
打开PowerDesigner 创建Model,选择相对应的Oracle环境(博主用的是11g)
![](https://i-blog.csdnimg.cn/blog_migrate/c0525a85465a463b603509a367bfa5be.png)
选择要转换的SQL
![](https://i-blog.csdnimg.cn/blog_migrate/11aef7b5a440533154b6de45874182c7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1021ad9f8ff0e5841cff31898f8d0aa0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/97ad3001e7d639ea1098b7ca09191699.png)
之后文件就被导进来了
![](https://i-blog.csdnimg.cn/blog_migrate/e0037620b095037af3490ee5ac10ed62.png)
转换当前的数据库类型,我们要转换为Mysql,选择Mysql5.0(博主用的是5.0版本)
![](https://i-blog.csdnimg.cn/blog_migrate/6abc1ac32a963b15222b2431878fcfeb.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4bb1aa260ef076b1b3f199ad6b506ad0.png)
之后就成功转换为Mysql的类型了。
![](https://i-blog.csdnimg.cn/blog_migrate/1b9c085bb83d6e747fa49a51a2c97232.png)
最后,导出的就是Mysql可以运行的sql文件了,可以直接在Navicat中执行sql导入。
![](https://i-blog.csdnimg.cn/blog_migrate/fad946dd385561e75d6bb5228c138d88.png)
需要注意的是,有时候转换的数据长度可能不相同,需要留意下,必要时在导入到Mysql后要手动进行更改,否则到时候导入数据可能会出错。
PowerDesigner用处是设计数据库模型的,我在此处只是由于工作需要才安装了这个软件(也才知道这个软件,阅历太少),且用到他的转换功能,将来如果有需要再仔细研究。
工具使用不久,如稳重有错误,感谢指出。