expdp导出oracle数据库中指定表空间下数据

Posted prophet-xc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了expdp导出oracle数据库中指定表空间下数据相关的知识,希望对你有一定的参考价值。

大家在工作中,应该很多接触各种各样的数据库,笔者在此记录一下,我的一次导出数据经历。

工作环境是oracle+Linux(红帽系统,类似centos)

1.进入linux系统(这里不在赘余)

2.运行sqlplus,建议创建oracle用户 管理数据库,直接输入sqlplus 可能不行,需要修改系统的环境变量,我这里是用的

. /home/oracle/.bash_profile 

临时改变系统环境变量

3.在进入sqlplus 中,创建目录路径:输入命令:

create directory my_url as ‘/u01/Backup/oracledata‘

 ;(注:这里my_url和路径可以修改为自己的)

查看路径是否创建成功;

select * from dba_directories

4.授权 用户

Grant read,write on directory my_url to myusers; 

(myusers为数据库用户,没有可创建)

5.数据导出,执行命令:

expdp 用户名/密码@ip地址(不写默认为本地地址)/实例  [属性]

expdp myusers/123456@orcl schemas=dbuser dumpfile=expdp.dmp directory=my_url logfile=expdp.log

directory=dmpfile          --导出的逻辑目录,务必要在oracle中创建完成的,并且给对应用户授权读写权限
dumpfile=xx.dmp      --导出的数据文件的名称,如果想在指定的位置的话可以写成dumpfile=/home/oracle/userxx.dmp
logfile=xx.log          --日志文件,如果不写这个参数的话默认名称就是export.log,可以在本地的文件夹中找到
schemas=userxx       --使用dblink导出的用户不是本地的用户,需要加上schema来确定导出的用户,类似于exp中的owner,但还有一定的区别
EXCLUDE=TABLE:"IN(‘T1‘,‘T2‘,‘T3‘)"     --exclude 可以指定不导出的东西,table,index等,后面加上不想导出的表名
network_link=db_local          --这个参数是使用的dblink来远程导出,需要指定dblink的名称
举例 :

expdp lims_data/*********************  directory=lims_url dumpfile=data200302.dmp schemas=lims_data logfile=data200302.log 

  

 

以上是关于expdp导出oracle数据库中指定表空间下数据的主要内容,如果未能解决你的问题,请参考以下文章

基于EXPDP,IMPDP实现oracle数据的导入导出

Oracle数据泵expdp/impdp

如何使用expdp和impdp命令将一个数据库的表空间导入到另一个数据库中?(oracle 10g)

Oracle数据迁移expdp/impdp

使用sql查询mysql/oracle/sql server/gp数据库中指定表的字段信息(字段名/字段类型/字段长度/是否是主键/是否为空)

oracle impdp全库导入时如何指定表空间位置