一、确认dmp文件、oracle客户端和服务端的字符集

(1)dmp文件字符集确认:

使用UE打开dmp文件查看文件第2个和第3个字节内容,这两个字节记录了dmp文件的字符集。如0354,然后用以下sql查出它对应的字符集:

select nls_charset_name(to_number('0354','xxxx')) from dual;

结果显示为ZHS16GBK,若是使用UE打开不方便,也可使用linux命令查看:cat exp.dmp|od -x|head -1|awk '{print $2$3}'|cut -c 3-6

还可以使用imp命令尝试导入dmp文件,在日志文件或linux界面上可以查看该dmp文件的字符集。

(2)查看oracle 服务端的字符集

使用sql进行查询:select userenv('language') from dual;

结果类似: SIMPLIFIED CHINESE_CHINA.ZHS16GBK

(3)查看oracle客户端的字符集

使用linux命令查看:echo $NLS_LANG

结果类似如下:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

二、根据dmp文件的字符集修改oracle客户端和服务端的字符集

以下的修改以dmp文件的字符集为SIMPLIFIED CHINESE_CHINA.ZHS16GBK为例。

(1)修改oracle客户端字符集

修改/ect/下的profile文件中的:

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

(2)修改oracle服务端的字符集

使用以下sql语句进行修改:

sqlplus /nolog;

conn / as sysdba

shutdown immediate;

startup mount;

alter system enable restricted session;

alter system set job_queue_processes=0;

alter system set aq_tm_processes=0;

alter database open;

alter database character set internal_use ZHS16GBK;

shutdown immediate;

startup;

三、使用imp命令将dmp文件导入oracle数据库

切换到oracle用户,然后使用imp命令导入dmp文件,步骤如下:

su - oracle;

imp user/pwd@ip:1521/实例名 file=/filepath/exp.dmp log=/logpath/implog.log full=y ignore=y

四、使用sqluldr2抽取oracle数据库中的表数据到txt文件

首先安装sqluldr2软件,然后使用sqluldr2抽取oracle表数据到txt文件,具体步骤如下:

打开cmd命令,进入sqluldr2.exe目录

使用以下命令导出数据

sqluldr264.exe user="user/pwd@ip:1521/dbtrain" query= "select * from tablename" field=0x09 record=0x0a file= "E:\out.txt" charset=ZHS16GBK

命令中field为列分隔符,此处0x09为制表符,record为行分隔符,此处0x0a为换行符,具体指令见sqluldr2的帮助。

dmp文件导入抽取方法的更多相关文章

  1. dmp文件导入的方法

    1,使用oracle的imp命令导入*.dmp文件 首先要明确知道,使用oracle的imp命令进行导入,要在一个空的数据库下,才是最好的,否则,数据表存在的话,就要先删除数据表中的数据 步骤1:禁用 ...

  2. 【exp/imp】将US7ASCII字符集的dmp文件导入到ZHS16GBK字符集的数据库中

    [exp/imp]将US7ASCII字符集的dmp文件导入到ZHS16GBK字符集的数据库中 1.1  BLOG文档结构图 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后 ...

  3. 转-【exp/imp】将US7ASCII字符集的dmp文件导入到ZHS16GBK字符集的数据库中

    原帖地址:http://blog.csdn.net/lihuarongaini/article/details/71512116 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完 ...

  4. 如何将dmp文件导入到oracle数据库中

    如何将dmp文件导入到oracle数据库中 1.首先,我们可以先建立自己的一个用户表空间,创建表空间的格式如下: CREATE TABLESPACE certification(表空间的名字) DAT ...

  5. 【EXP】比较大的dmp文件导入的时候可以将界面关掉

    有一个需求,将一个dmp文件导入到数据库中,但是这个crt的回话有timeout,3分钟,所以一到三分钟就掉线,导入就失败了,这让人很头疼,关闭界面,imp也就终止了 最后想到了几招,分享一下: 1. ...

  6. 【故障处理】IMP-00010错误 12C的dmp文件导入11G

    [故障处理]IMP-00010错误 12C的dmp文件导入11G 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其 ...

  7. dmp文件导入

    dmp文件导入 1,打开“开始”-->输入cmd—> sqlplus log: 2,输入 conn / as sysdba管理员账户登录: 3,需要创建表空间,如果我们知道需要导入的数据库 ...

  8. paip.oracle10g dmp文件导入总结

    paip.oracle10g dmp文件导入总结 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net ...

  9. 20181112-PostgreSQL数据库dmp文件导入(记录一次数据导入)

    20181112-PostgreSQL数据库dmp文件导入 标注:dmp文件导入,场景:多个schema导入 1. 环境准备: postgres集群master节点上,postgres用户执行以下操作 ...

随机推荐

  1. 这可能是目前最轻量级、最支持MVVM、可定制性最高的开源Chart控件!

    由于项目中经常用到Series Chart,而目前市面又实在找不到既支持MVVM,又轻量级的开源Chart控件,于是干脆就花了两周时间随手写了一个.昨天感觉还比较满意,就发布到了Github上:htt ...

  2. MySQL的修仙者之旅,不来看看你的修为如何吗?

    目录 因为我个人比较喜欢看修仙类的小说,所以本文的主体部分借用修仙者的修为等级,将学习旅程划分成:练气.筑基.结丹.元婴.化神.飞升六个段位,你可以看下你大概在哪个段位上哦! 本文目录: 我为什么要写 ...

  3. python多元回归于调用excel文件

    import xlrd from numpy.linalg import inv import numpy as np data = xlrd.open_workbook(u'C:\\Users\\x ...

  4. 探究 position-sticky 失效问题

    CSS 的 position 值中,有一个非常有用的值 -- position: sticky,通常会被用于各种吸顶,吸底,吸边的效果中. 如果你对 sticky 还不太熟悉,可以先看看我的这篇文章: ...

  5. C# HTTP1.0 1.1 2.0与HTTPS 、TCP/IP协议的UDP与TCP、 Socket介绍与WebSocket

    一.HTTP1.0 1.1 2.0和HTTPS 1.HTTP协议是什么? HTTP协议是超文本传输协议的缩写,英文是Hyper Text Transfer Protocol.它是从WEB服务器传输超文 ...

  6. jq再次封装自己的ajax & js 回调函数 & js方法注释&js 全局屏蔽点击事件及a标签

    1.封装成一个独立JS var commonUrl = 'http://xx.xxx.com/'; function http({ url, type = "post", data ...

  7. MM-合作伙伴确定过程

    第一步:物料管理---采购---合作伙伴确定---合作伙伴角色---定义合作伙伴角色. 第二步:物料管理---采购---合作伙伴确定---合作伙伴角色---定义每个科目组适合的合作伙伴角色. 第三步: ...

  8. [leetcode]82. Remove Duplicates from Sorted List

    第一题:遍历链表,遇到重复节点就连接到下一个. public ListNode deleteDuplicates(ListNode head) { if (head==null||head.next= ...

  9. C语言输入字符串

    首先强调一点,C语言没有字符串的概念!所谓的字符串实际上还是以数组形式保存的. 方法1  -- 通过"%s"输入 优点:简单明了,输入字符只要不大于数组长度都可以. #includ ...

  10. 如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?

    这可以使用 DEV 工具来实现.通过这种依赖关系,您可以节省任何更改,嵌入式 tomcat将重新启动.Spring Boot 有一个开发工具(DevTools)模块,它有助于提高开发人员的生产力.Ja ...