Oracle数据导入MySQL的快捷工具
2012-04-12 10:11
537 查看
Oracle数据库中的数据某些情况下需要导入到MySQL中,如何方便快捷地导入呢?使用MySQL GUI Tools中的MySQL Migration Toolkit就可以轻松搞定,该工具对CLOB、BLOB类型的数据也有非常好的支持。
以下是利用该工具将原有的Oracle数据库中的数据导入到MySQL的过程。
1、 运行MySQL Migration Toolkit,一路“Next”到“Source Database”,在Database System中选择Oracle Database Server,如果第一次使用会告之要求加载驱动程序ojdbc14.jar。
加载驱动程序之后,界面将变成如下的形式,在其中填写Oracle数据库的连接信息,按“Next”继续。
2、 在Target Database中默认Database System为MySQL Server,在Connection Parameters中填写相应的MySQL数据库的连接信息,按“Next”继续。
3、进行数据库连接测试,测试通过后按“Next”到Source Schemata Selection,点选准备进行数据迁移的Schemata后按“Next”继续。
4、在Object Type Selection,点Detailed selection按钮,在下方左侧列表中选择不进行迁移的表,将其放入右侧列表中,即左侧列表剩余的表都将进行数据迁移。选择好之后按“Next”继续。
如果源数据库和目标数据库连接信息无误,会显示“Execution completed successfully”,点“Advanced”会显示详细的信息;如下图,点“Next”
选择Schemata,也可以用“ctrl”或则“shift”选择你需要的多个schemata,如图7,点“Next”,
图7.
实现数据转化,如图8,点“Next”,
图8.
如图9所示,选择需要迁移的表。默认选择schemata下所有的表。点“Detailed selection”,如图10所示,移除不需要的表,点“Next”,
图9.
图10.
通过“set parameter”设置“object mapping”的参数,如图11,点“Next”,
图11.
对象被执行迁移,如图12,点“Next”,
图12.
后面的基本上就是点“Next”,直到完成,在图13,出现一个错误:
错误提示:
Packet for query is too large (1767187 > 1048576).
You can change this value on the server by setting the max_allowed_packet' variable.
由于oracle表中用了varchar2(4000),表中连续4个字段都是varchar2(4000),大于mysql5系统默认值“max_allowed_packet=1048576”,
解决方式:
在mysql配置文件,(linux)vim /etc/my.cnf添加:
[mysqld]
max_allowed_packet=16777216
至于其他系统,找mysql启动配置文件,添加即可。
图13.
最后查看log。
以下是利用该工具将原有的Oracle数据库中的数据导入到MySQL的过程。
1、 运行MySQL Migration Toolkit,一路“Next”到“Source Database”,在Database System中选择Oracle Database Server,如果第一次使用会告之要求加载驱动程序ojdbc14.jar。
加载驱动程序之后,界面将变成如下的形式,在其中填写Oracle数据库的连接信息,按“Next”继续。
2、 在Target Database中默认Database System为MySQL Server,在Connection Parameters中填写相应的MySQL数据库的连接信息,按“Next”继续。
3、进行数据库连接测试,测试通过后按“Next”到Source Schemata Selection,点选准备进行数据迁移的Schemata后按“Next”继续。
4、在Object Type Selection,点Detailed selection按钮,在下方左侧列表中选择不进行迁移的表,将其放入右侧列表中,即左侧列表剩余的表都将进行数据迁移。选择好之后按“Next”继续。
如果源数据库和目标数据库连接信息无误,会显示“Execution completed successfully”,点“Advanced”会显示详细的信息;如下图,点“Next”
选择Schemata,也可以用“ctrl”或则“shift”选择你需要的多个schemata,如图7,点“Next”,
图7.
实现数据转化,如图8,点“Next”,
图8.
如图9所示,选择需要迁移的表。默认选择schemata下所有的表。点“Detailed selection”,如图10所示,移除不需要的表,点“Next”,
图9.
图10.
通过“set parameter”设置“object mapping”的参数,如图11,点“Next”,
图11.
对象被执行迁移,如图12,点“Next”,
图12.
后面的基本上就是点“Next”,直到完成,在图13,出现一个错误:
错误提示:
Packet for query is too large (1767187 > 1048576).
You can change this value on the server by setting the max_allowed_packet' variable.
由于oracle表中用了varchar2(4000),表中连续4个字段都是varchar2(4000),大于mysql5系统默认值“max_allowed_packet=1048576”,
解决方式:
在mysql配置文件,(linux)vim /etc/my.cnf添加:
[mysqld]
max_allowed_packet=16777216
至于其他系统,找mysql启动配置文件,添加即可。
图13.
最后查看log。
相关文章推荐
- 使用navicat工具将oracle数据导入到mysql
- sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时的感受
- MySQL数据的导出和导入工具:mysqldump
- MySQL数据导入导出方法与工具介绍(2-import from sql files)
- MySQL数据导入导出方法与工具介绍
- 通过Sqoop工具将Oracle数据导入到HBase
- MySQL数据导入导出方法与工具介绍一 - MySQL
- 15 MySQL数据导入导出方法与工具介绍之三
- Oracle:通过pl/sql developer工具导入excel数据
- MySQL数据的导出和导入工具:mysqldump(备份数据库的命令)
- Sqoop工具使用 (二)--把HDFS中的数据导入到Oracle
- 使用sqoop工具从oracle导入数据
- 数据导入:Mysql to MSSql ---Mysql数据导入Sql Server 工具。
- Sqoop_详细总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入、导出
- 如何使用PL/SQL工具将excel中数据导入oracle库
- MySQL数据导入导出方法与工具介绍(3-Exporting Data)
- ORACLE数据导出与导入专题(3)——使用exp/imp工具进行数据导入导出
- mysql && oracle 导入导出数据方法总结
- HeidiSQL工具导出导入MySQL数据
- Sqoop_详细总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入、导出