精华内容
下载资源
问答
  • 一次oracle导出数据然后导入mysql的过程小计 1. 需求 给了服务器信息、数据库信息等,要导出数据。 2. 方法步骤: 远程服务器工具用向日葵,连接数据库工具使用PL/SQL Developer,找到对应表之后右键点击Query data...

    一次oracle导出数据然后导入mysql的过程小计

    1. 需求

    给了服务器信息、数据库信息等,要导出数据。

    2. 方法步骤:

    1. 远程服务器工具用向日葵,连接数据库工具使用PL/SQL Developer,找到对应表之后右键点击Query data查询要导出的记录;
      在这里插入图片描述
    2. 点击Export Query Results按钮并选择CSV file格式文件,选择导出路径后导出数据到指定目录;
      在这里插入图片描述
    3. 将导出的数据文件传输到自己的电脑,然后用navicate工具新建数据库,通过导入向导导入数据。
      在这里插入图片描述

    3. 期间问题:

    1. 我远程的服务器是Windows Server2003的,工具用的是向日葵,我用的个人版,传输文件的时候好像只能单向传文件,比如我远程的A,我可以往A里拖文件,直接就复制过去了,传输文件的方式应该还有很多,可以找找最便捷的方式。
      在这里插入图片描述
    2. 导入MySQL的时候遇到了一个中文乱码的问题,因为CSV格式文件多用GB 2312,所以我在导入向导里选择的编码是10008 (MAC - Simplified Chinese GB 2312),乱码问题解决了。
      在这里插入图片描述
    3. 导入MySQL有一个行size大小超过65535的报错,我是通过把无关紧要的扩展字段由varchar类型改成text解决的。
      在这里插入图片描述
    展开全文
  • 有一个从oracle导出的dmp文件,需要导出.csv或者.sql导入mysql,请问该怎么办,从来没用过oracle,装了个11g之后连服务都起不来。。
  • Oracle导出CSV到MySQL

    2019-07-26 16:55:30
    Oracle导出CSV到MySQL 一、导出CSV 1.1 存储过程导csv CREATE OR REPLACE PROCEDURE SQL_TO_CSV (P_QUERY IN VARCHAR2,P_DIR IN VARCHAR2,P_FILENAME IN VARCHAR2) IS L_OUTPUT UTL_FILE.FILE_TYPE; L_THECURSOR ...

    Oracle导出CSV到MySQL

    一、导出CSV

    1.1 存储过程导csv

    CREATE OR REPLACE PROCEDURE SQL_TO_CSV
    (P_QUERY IN VARCHAR2,P_DIR IN VARCHAR2,P_FILENAME IN VARCHAR2) IS
    L_OUTPUT UTL_FILE.FILE_TYPE;
    L_THECURSOR INTEGER DEFAULT DBMS_SQL.OPEN_CURSOR;
    L_COLUMNVALUE VARCHAR2(4000);
    L_STATUS INTEGER;
    L_COLCNT NUMBER := 0;
    L_SEPARATOR VARCHAR2(1);
    L_DESCTBL DBMS_SQL.DESC_TAB;
    P_MAX_LINESIZE NUMBER := 32000;
    BEGIN
    L_OUTPUT := UTL_FILE.FOPEN(P_DIR, P_FILENAME, 'W', P_MAX_LINESIZE);
    EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_DATE_FORMAT=''YYYY-MM-DD HH24:MI:SS''';
    DBMS_SQL.PARSE(L_THECURSOR, P_QUERY, DBMS_SQL.NATIVE);
    DBMS_SQL.DESCRIBE_COLUMNS(L_THECURSOR, L_COLCNT, L_DESCTBL);
    FOR I IN 1 .. L_COLCNT LOOP
    --UTL_FILE.PUT(L_OUTPUT,L_SEPARATOR || '"' || L_DESCTBL(I).COL_NAME || '"'); --display column name in csv
    DBMS_SQL.DEFINE_COLUMN(L_THECURSOR, I, L_COLUMNVALUE, 4000);
    L_SEPARATOR := ',';
    END LOOP;
    UTL_FILE.NEW_LINE(L_OUTPUT);
    L_STATUS := DBMS_SQL.EXECUTE(L_THECURSOR);
    WHILE (DBMS_SQL.FETCH_ROWS(L_THECURSOR) > 0) LOOP
    L_SEPARATOR := '';
    FOR I IN 1 .. L_COLCNT LOOP
    DBMS_SQL.COLUMN_VALUE(L_THECURSOR, I, L_COLUMNVALUE);
    UTL_FILE.PUT(L_OUTPUT,L_SEPARATOR || '"' ||TRIM(BOTH ' ' FROM REPLACE(L_COLUMNVALUE, '"', '""')) || '"');
    L_SEPARATOR := ',';
    END LOOP;
    UTL_FILE.NEW_LINE(L_OUTPUT);
    END LOOP;
    DBMS_SQL.CLOSE_CURSOR(L_THECURSOR);
    UTL_FILE.FCLOSE(L_OUTPUT);
    EXCEPTION
    WHEN OTHERS THEN
    RAISE;
    END;
    

    在这里插入图片描述

    调用存储过程:

    exec sql_to_csv('sql语句','directory目录','文件名.CSV');
    

    示例:

    create directory dump as '/opt/dump';
    
    set serveroutput on;
    exec sql_to_csv('SELECT attachguid,attachfilename,contenttype,documenttype,cliengtag,cliengguid,categoryguid,tenantguid FROM frame_attachstorage where attachguid=''005a1d80-08c7-4cd1-8fc7-9a4aa739b788''','DUMP','aa.CSV');
    

    1.2 Sql Developer导出csv

    在这里插入图片描述
    在这里插入图片描述

    注意:两种方式导出的csv文件需要确保字符集为UTF-8

    [root@mysql_node1 opt]# file -i xx2.csv
    xx2.csv: text/plain; charset=utf-8

    二、导入CSV到MySQL

    1、修改my.cnf
    加入此参数secure_file_priv = /opt
    重启MySQL再次查看
    mysql> show global variables like ‘%secure%’;
    ±-------------------------±------+
    | Variable_name | Value |
    ±-------------------------±------+
    | require_secure_transport | OFF |
    | secure_auth | ON |
    | secure_file_priv | /opt/ |
    ±-------------------------±------+
    3 rows in set (0.01 sec)

    2、将csv文件放到/opt目录

    3、创建表结构
    原Oracle表结构

    create table DZ_ZZ
    (
      CERTIFICATE_INFORMATION_ID VARCHAR2(32) not null,
      BM_DZ_ID                   VARCHAR2(32),
      DZ_ZZ_NUM                  VARCHAR2(256),
      ZZ_NUM                     VARCHAR2(200),
      CERTIFIED_TIME             DATE,
      EFFECTIVE_STARTTIME        DATE,
      EFFECTIVE_ENDTIME          DATE,
      CERTIFIED_UNITS            VARCHAR2(100),
      HOLDER                     VARCHAR2(1000),
      HOLDER_TYPE                VARCHAR2(32),
      HOLDER_CERTIFICATE_TYPE    VARCHAR2(32),
      HOLDER_NUMBER              VARCHAR2(200),
      LICENSES_CLASSIFICATION    VARCHAR2(32),
      CREAT_TIME                 DATE,
      JHPT_UPDATE_TIME           DATE,
      STATE                      VARCHAR2(1),
      PICTURE_URL                VARCHAR2(500)
    )
    
    
    alter table DZ_ZZ
      add constraint CERTIFICATE_INFORMATION_ID primary key (CERTIFICATE_INFORMATION_ID)
      using index;
    

    适配到MySQL表结构

    CREATE TABLE dz_zz_test (
      certificate_information_id varchar(200)  NOT NULL,
      bm_dz_id varchar(200)  DEFAULT NULL,
      dz_zz_num varchar(256)  DEFAULT NULL,
      zz_num varchar(200)  DEFAULT NULL,
      certified_time varchar(50) DEFAULT NULL,
      effective_starttime varchar(50) DEFAULT NULL,
      effective_endtime varchar(50) DEFAULT NULL,
      certified_units varchar(200)  DEFAULT NULL,
      holder varchar(1000)  DEFAULT NULL,
      holder_type varchar(200)  DEFAULT NULL,
      holder_certificate_type varchar(200)  DEFAULT NULL,
      holder_number varchar(200)  DEFAULT NULL,
      licenses_classification varchar(200)  DEFAULT NULL,
      creat_time varchar(50) DEFAULT NULL,
      jhpt_update_time varchar(50) DEFAULT NULL,
      state varchar(1)  DEFAULT NULL,
      picture_url varchar(500)  DEFAULT NULL,
      PRIMARY KEY (certificate_information_id)
    );
    

    4、导入csv

    load data infile '/opt/DZ_ZZ.csv' into table dz_zz_test 
    CHARACTER SET utf8mb4 
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\r\n' 
    IGNORE 1 LINES (CERTIFICATE_INFORMATION_ID,BM_DZ_ID,DZ_ZZ_NUM,ZZ_NUM,CERTIFIED_TIME,
    EFFECTIVE_STARTTIME,EFFECTIVE_ENDTIME,CERTIFIED_UNITS,HOLDER,HOLDER_TYPE,
    HOLDER_CERTIFICATE_TYPE,HOLDER_NUMBER,LICENSES_CLASSIFICATION,
    CREAT_TIME,JHPT_UPDATE_TIME,STATE,PICTURE_URL);
    

    备注:
    1 FIELDS TERMINATED BY ','是以逗号分隔开
    2 OPTIONALLY ENCLOSED BY '"' 是去掉csv文本,列字段左右两边双引号"字段名"
    在这里插入图片描述
    3 IGNORE 1 LINES 如果csv第一行是字段名称列,可将此行忽略
    4 LINES TERMINATED BY '\r\n' 是行之间的分隔,\n是新行 \r是回车

    FAQ:
    导入时有报错ERROR 1261 (01000):Row 1 doesn’t contain data for all colums
    解决方法:
    查看 MySQL 当前连接的 sql_mode

    mysql> show variables like ‘sql_mode’;
    临时修改sql_mode
    mysql> set sql_mode=’’;

    展开全文
  • Oracle 数据库数据导入mySQL

    千次阅读 2017-05-17 13:47:10
    Oracle数据库数据 导入 mysql 数据库

    1.先将Oracle数据库中需要导入mySQL的数据查出来

    2.选中查询结果中的某一列 右击 选中‘Copy to Excel’ 将查询结果保存为Excel表  ,并另存为 到一个具体的盘下面(例如E盘 )方便导入mysql时找到这个excel表格



    3.打开 my SQL的可视化工具Navicat for mysql,在数据库下面选中表右击  选择‘导入向导’


    4.在导入向导步骤一中 ,选择相对应的数据导入格式


    步骤二:导入从  即oracle数据库中数据保存的excel表格  记得勾选 'SQL Results'这一项


    接着一直点‘下一步‘ 直到步骤六  “在步骤六 记得给它添加一个主键列


    步骤七:选择导入模式


    步骤八:点击开始  导入完成后关闭窗口

    这时你就会发现在数据库表 下面多了一个sql results表


    这个表中的数据即oracle数据库中导出的数据

    -->这样就将oracle数据库中的数据导入my sql 了

    展开全文
  • oracle数据库的导出,然后建用户说明,以及导出SQL脚本
  • spool–导出sql语句结果集 SQL>spool c:\testsql.sqlSQL>SELECT * FROM table_name;SQL>spool off; sav–保存执行的sql语句 SQL>SELECT * FROM table_name;SQL>sav c:\test.sql;   您可能感兴趣的文章:MySQL中在...
  • navicat premium从Oracle导出数据到mysql

    千次阅读 2017-02-17 13:02:20
    项目上要将Oracle数据导出mysql,从网上查到navicat premium是个不错的工具,就是试了一下。期间遇到很多问题,记录如下: 1、首先是将现场数据库还原到公司远程数据库,一直报“必须说明 'SET_NO_OUTLINES' 组件...
    项目上要将Oracle数据导出到mysql,从网上查到navicat premium是个不错的工具,就是试了一下。期间遇到很多问题,记录如下:

    1、首先是将现场数据库还原到公司远程数据库,一直报“必须说明 'SET_NO_OUTLINES' 组件”错误,上网查了一下,说是导出的Oracle数据库与导入的数据库版本不一致导致,但是我是低版本导入高版本,应该不存在这个问题。试了很长时间,发现是因为我的Oracle账号权限不够所致,试了另一个账号,导入成功。

    2、然后安装完navicat premium,连接远程Oracle数据库始终失败,一直弹出"Cannot load OCI DLL, 126: Instant Client package is required for Baic and TNS connection"错误,在网上查了很多方法,大都是说“Navicat仅支持32位的,需下载一个32位的Oracle 客户端instant client”,下了配置好了也不管用,后来发现原来现在Navicat已经有64位和32位了,我安装的是64位的,所以用32位的Oracle客户端有问题。后来又重新下载了32位的Navicat,配置好instant client的oci.dll,这次不报“Cannot load OCI DLL”错误,报了“ORA-12514: TNS:listener does not currently know of service requested in connect”错误,网上说要改tnsnames.ora,但是我用plsql链接远程数据库并没有问题。

    后来想起来,我plsql用的是另外一个Oracle精简版安装程序,于是就将Navicat配置了跟plsql一样的oci.dll,然后就可以连上了。

    3、使用Navicat导出Oracle数据库到mysql又遇到问题,“Too big precision 7 specified for 'time'. Maximum is 6.”错误,一查是因为Oracle的timestamp精度是7,但是MySQL的datetime精度是6,导致数据传输不成功。在网上也没找到办法,后来我一想,既然是长度问题,我把oracle的长度改一下不就行了,于是就把timestamp的长度改为6,没想到改成了,数据传到mysql了。

    4、但是导另外一个表又出现问题,说是重复主键,Oracle里面根本没有重复的主键,没办法我把Oracle的主键取消了,导入才成功了。

    5、从网上看到导入mysql的另一个方法,先导出为mysql支持sql文件,然后再在mysql里执行这个sql文件,就可以导入了。

    6、后来我换了一台电脑(win10操作系统)使用navicat和plsql连接Oracle又出现问题,按照上面的方法都走了一遍也不行,后来发现是没有配置环境变量(变量名:ORACLE_HOME,变量值:E:\tools\Oracle\OraClient Lite\product\11.2.0\client_lite),后来配好了才能正常连接。之前我用win7也没配环境变量,可以正常连接,这次用win10不行,不知道是否是操作系统的问题。





    6、导入时因为数据太多,数据导入报错:Got a packet bigger than‘max_allowed_packet’bytes

    2个解决方法:

    1.临时修改:mysql>set global max_allowed_packet=524288000;修改 #512M

     2.修改my.cnf,需重启mysql。   在 [MySQLd] 部分添加一句(如果存在,调整其值就可以):  max_allowed_packet=10M

    参考资料:http://blog.csdn.net/u011526234/article/details/50485972

    展开全文
  • oraclemysql导入导出

    千次阅读 2012-04-06 15:34:36
    oracle导出:exp PECARD_HN/PECARD_HN@192.168.141.40:1521/orcl file=E:\work\dmp\PECARD_HN.dmp oracle导入:imp PECARD_HN/PECARD_HN@127.0.0.1:1521/orcl file=E:\work\dmp\PECARD_HN.dmp full=y mysql导出:...
  • Mysql: mysql localhost -uroot -p ...show databases; use 数据库名; source c:/a.sql;//sqlwen所在目录 导入完成 Oracle: 登录到dba:sqlplus / as sysdba sql文件的存放地址:@D:\*.sql; ...
  • (一)mysql导入导出数据库 1、导出数据库:使用mysqldump工具将数据库导出并转储到sql文件: mysqldump -u 用户名 -p 数据库名 > 路径+文件名 实例:mysqldump -u root -p yiibaidb > d:\database_bak\...
  • Mysql数据导入Oracle中方法 总有网友问我数据库方面的知识,今天我介绍下数据库的导入导出。   第一. Mysql方面   首先要将xx.sql文件导入mysql.推荐大家使用Navicat Lite for MySQL工具。可以自己...
  • 将要导入的库的所有表的表结构(不要表数据,只要表结构)导出成一个.sql文件。 在PowerDesinger里找到 File -->> Reverse Engineer --->> Database ; 在 弹出的“New ...
  • 导出 一般导入的时候我用的是命令行 imp c##zs/111@orcl fromuser=c##zs touser=c##zs file=D:\...Oracle 不像Mysql 直接进行 主键进行自增 接下来有两种方法 1.使用图形化界面 选中表然后右键 ...
  • MySqlOracle数据库本地或远程备份导出导入(JAVA版)工具类,亲测可用!! 注:Mysql导出导入的时候需要配置 mysqldump和mysql命令的全路径!!!
  • 导入sql文件命令规则: mysql -u userName -p 目标数据库 < 源sql文件路径;结束我测试是导入quartz源码包中的12张表tao@tao-Lenovo-IdeaPad-S410:~$ mysql -u root -p linux_mysql < /home/tao/下载/...
  • 你可能需要将MySQL中的数据导入Oracle中,或者从另一个Oracle数据库中导入到你自己的数据库中,这篇文章就是介绍数据导入导出。如果觉得文章不错,欢迎点赞,分享,收藏呀。1 数据库导入导出需要注意1.目标数据库...
  • 目录 1. 数据库导出步骤 1.1导出用户对象 ...PL/SQL Developer是Oracle数据库用于导入导出数据库的主要工具之一,本文主要介绍利用PL/SQL导入导出Oracle数据库的过程。 1. 数据库导出步骤 1.1导...
  • 采用 oracle(pl/sql)-> excel -> mysql(Navicat for mysql) 的方式 具体步骤: 通过pl/sql连接远程oracle数据库具体步骤方法可百度,相关资料很多。简单描述为:下载安装客户端;配置tns文件;修改环境变量;...
  • MySql数据库备份与恢复——使用mysqldump 导入导出方法总结   mysqldump客户端可用来转储数据库或搜集数据库进行备份或将数据转移到另一个sql服务器(不一定是一个mysql服务器)。转储包含创建表和/或装载表的...
  • 使用OracleMysql的小伙伴,如果你想要快速的导入导出数据,那就进来看看吧。文件针对OracleMysql导入导出,做了详细的举例说明。Oracle的是利用expdp/impdp,在Linux系统中进行导入导出操作,Mysql则是使用的...
  • 数据导入导出 ORACLE+MySQL

    千次阅读 2014-11-01 12:26:41
    ORACLE数据库导出 ORACLE数据库导出
  • 因为工作需要需要将oracle中导出来的sql文件导入mysql中。首先要解决的就是oracle的安装,这里我安装的是oracle12c。转换的软件用的是navicat permium。
  • MySQL数据导入Oracle的中间件,其工作原理是将MySQL数据的导出命令写入到d:/mysqltooracle/exportcmd.txt,打开该文件即可获取需要手动执行的导出MySQL数据的sql脚本,执行后会在 “/var/mysqltooracle”(针对...
  • Linux下将远程mysql数据库需要的数据导出到本地文件,然后将文件导入到本地的oracle数据库中,通过shell脚本和sqlldr实现每日定时任务
  • 使用Navicat将Oracle数据库导入Mysql

    万次阅读 多人点赞 2018-03-23 09:23:34
    前言:解决Navicat连接Oracle数据库报错Cannot load OCI DLL问题,让Navicat成功连接Oracle数据库,将Oracle数据库导入Mysql中。 一.下载和激活Navicat Navicat Premium 版本 12 下载地址 ...
  • PL/SQLDeveloper导入导出Oracle数据库方法前一篇博客介绍了Navicat工具备份Oracle的方法,这篇博客介绍一下使用PL/SQL Developer工具导入导出Oracle数据库的方法。PL/SQL Developer是Oracle数据库用于导入导出数据库...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,150
精华内容 9,660
关键字:

oracle导出的sql导入mysql

mysql 订阅