oracle数据库导出数据时报错
一般情况下,我们对oracle数据库导出使用exp命令:
exp userName/password file=myExp.dmp owner=userName;
但今天博主在对数据库进行exp导出操作时,导出失败报错:
EXP-00006: internal inconsistency error
EXP-00000: Export terminated unsuccessfully
在这种情况下,我们碰上了oracle的bug,exp命令行不通。
下面介绍另外一种导出方式——expdp命令。
- 创建dmp文件存储路径
mkdir /oracle/dump_dir
- 启动sqlplus
sqlplus / as sysdba
- 为dump导入导出新建目录名称(dump_dir)
create directory dump_dir as '/oracle/dump_dir';
- 为此用户的导入导出目录赋读写权限
//dump_dir为上条语句创建的目录名称
//userName为数据库的用户名,需要导哪个用户名下的数据就赋权给谁
grant read,write on directory dump_dir to userName;
- 退出 sqlplus 并运行dump工具
exit;
- 执行导出操作
//directory=自己创建的目录名称
//dumpfile=导出的文件名称
expdp userName/password directory=dump_dir dumpfile=myDump.dmp
最后附上配套的导入命令
impdp userName/password directory=dump_dir dumpfile=myDump.dmp FULL=y;