ORACLE数据库数据导入Mysql数据库的一个小方法

来源:互联网 发布:javascript php 传值 编辑:程序博客网 时间:2024/04/29 01:31

导入数据方式

采用 oracle(pl/sql)-> excel -> mysql(Navicat for mysql) 的方式

具体步骤:

  1. 通过pl/sql连接远程oracle数据库

    具体步骤方法可百度,相关资料很多。简单描述为:下载安装客户端;配置tns文件;修改环境变量;配置pl/sql(tools->connet);连接pl/sql;

    注意

    1. 最好安装oracle的完整客户端,不要使用简易的客户端,因为简易的客户端自身不带有进行导出导入数据的功能。如果导出按钮为灰色,一般说明客户端有问题。
    2. pl/sql好像只支持32位系统,因此安装oracle客户端时,也最好使用 32位的;
    3. 导出文件的格式有三种形式,dmp,sql和plsql自己带有的格式。这三种方式的导出文件包括sql,都不能直接导入mysql。
  2. 将数据导入到excel

    Oracle和mysql的语法不兼容,导出的数据文件不能直接导入mysql。对于数据量较小。少于10w条数据量的表,现在有一个较为笨拙的方法。即将数据导入到excel,再从excel导入mysql

    Pl/sql本身可以将数据导入到excel(无论是视图还是表格。都可直接导入),使用查看表数据,然后在数据显示界面的空白处点击右键,将数据导入excel保存为.xls格式即可。

  3. 导入mysql

    这里需要使用一款mysql的官方推荐软件,Navivat for mysql,这款软件可以简易的连接服务器数据库,并将多种格式的文件导入数据库,这其中就包含.xls的excel文件。

    注意

    1. 导出的数据存在以下几点问题,首先没有id字段,需要手动命名为id;
    2. 导出的数据表记得要自己修改名称。默认名称中含有空格,也可以导入,但是导入后无法操作,mysql不认可空格;
    3. 所有字段的默认数据形式全部为varchar(255),需要根据原来的oracle数据表形式进行参照手动修改。

缺陷

这个方法笨拙且试用范围窄,很明显不是正确的方法,但是也算是一个将数据进行迁移的办法,在还没有找到更好的将数据从远程oracle同步到本地mysql服务器的方法之前,可将旧一下,先用着。:)

缺点如下:
1. 步骤较多,麻烦;
2. 试用范围小,只适合10w行以下,理论是都可以适应,但是数据量过大比如到达百万级。从pl/sql到excel的导入过程将会十分漫长。
3. 不能实时同步。这是现在最为致命的问题。数据必须人工的进行定时的导出导入,不能与一卡通的直连服务器进行实时的更新,毫无疑问很不合理。

如果哪位大神有将远程oracle数据库中的数据导入mysql数据库中的比较简单或者说比较正统的方法的话,请麻烦务必要告诉我,在此感激不尽。

0 0
原创粉丝点击