首页 > 数据库 > Oracle > 正文

Oracle导入导出提示E,XP-0006:出现内部不一致的错误解决办法

2019-11-02 15:33:50
字体:
来源:转载
供稿:网友

   exp、imp是ORACLE幸存的最古老的两个操作系统命令行工具,导入(IMP)/导出(EXP),昨天在Oracle用exp、imp导入导出报EXP-0006:出现内部不一致的错误。

  以前用exp、imp导库命令成功的实现了Oracle数据库的导出、导入,对此,昨天再对服务器新安装的Oracle数据库用exp、imp导库,一直报“EXP-0006:出现内部不一致的错误”,于是在网上百度,尝试其他导库方式,发现采用expdp、impdp数据泵同样可以完成数据库的导出、导入,而且数据泵与传统导出导入有如下区别:

  1.EXP和IMP是客户段工具程序, EXPDP和IMPDP是服务端的工具程序;

  2.EXP和IMP效率比较低. EXPDP和IMPDP效率高;

  3.数据泵功能强大并行、过滤、转换、压缩、加密、交互等等;

  4.数据泵不支持9i以前版本, EXP/IMP短期内还是比较适用;

  5.同exp/imp数据泵导出包括导出表,导出方案,导出表空间,导出数据库4种方式。

  有了理论支持,下面开始实战。

  expdp导出Oracle数据库

  1.在sqlplus下创建Directory, 优点在于让我们可以在Oracle数据库中灵活的对文件进行读写操作,极大的提高了Oracle的易用性和可扩展性。

  命令:createdirectory oracleDB as 'D:OracleDB';

  2.把读写权限授予特定用户

  命令:Grantread,write on directory oracleDB to radpcs;

  3.在dos窗口执行expdp导出命令

  命令:expdp [email protected] directory=oracleDB dumpfile =20150226.dmp logfile=20150226.logFULL=y;

  到此导出工作完成,下面讲解如何用impdp导入Oracle数据库。

  impdp导入Oracle数据库

  
1.以sysdba级别登录Oracle数据库

  命令:--sqlplus /nolog

  --conn [email protected] as sysdba

  2.创建数据表空间

  命令:

  --创建数据表空间

  CREATE TABLESPACE RADPCS_DATA

  LOGGING

  DATAFILE 'D:OracleDBradpcs_DATA.DBF' SIZE 200M REUSE AUTOEXTEND

  ON NEXT 10M MAXSIZE 16383M EXTENT MANAGEMENT LOCAL UNIFORM

  SIZE 1024K;

  --创建索引表空间

  CREATE TABLESPACE RADPCS_INDX

  LOGGING

  DATAFILE 'D:OracleDBradpcs_INDX.DBF' SIZE 200M REUSE AUTOEXTEND

  ON NEXT 10M MAXSIZE 16383M EXTENT MANAGEMENT LOCAL UNIFORM

  SIZE 1024K;

  这步很关键,创建的表空间需要和原Oracle表空间名称、个数相同,否则会导入失败。如果不知道原表空间名称、个数,就先创建一个临时的表空间进行导入,导入过程中根据错误提示,比如“RADPCS1_DATA表空间不存在”提示,缺哪个创建哪个。

  3.创建用户、对用户授权

  --创建用户

  create user radpcs identified by ictradpcs

  default tablespace radpcs_data

  quota unlimited on radpcs_data

  quota unlimited on radpcs_indx;

  --授权

  grant aq_administrator_role to radpcs;

  grant aq_user_role to radpcs;

  grant authenticateduser to radpcs;

  grant connect to radpcs;

  grant ctxapp to radpcs;

  grant dba to radpcs;

  grant delete_catalog_role to radpcs;

  grant ejbclient to radpcs;

  grant execute_catalog_role to radpcs;

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表