[转]oracle pump expdp impdp使用

用expdp或impdp命令时, 可暂不指出用户名/密码@实例名 as 身份, 然后根据提示再输入,  如:
     expdp schemas=scott DIRECTORY=dpdata  dumpfile=expdp.dmp ;

    一. 创建逻辑目录, 该命令不会在操作系统创建真正的目录. 最好以system等管理员创建.
    create directory dpdata as '/osssqm/oracle/admin/prod/dpdump/';

   二. 查看管理理员目录(同时查看操作系统是否存在, 因为Oracle并不关心该目录是否存在, 如果不存在, 则出错.)
    select * from dba_directories;

   删除逻辑目录     drop directory dpdata ;

    三. 给scott用户赋予在指定目录的操作权限, 最好以system等管理员赋予.
    grant read, write on directory dpdata to scott;

    四. 导出数据
    1)按用户导
     expdp system/manager  schemas=scott DIRECTORY=dpdata dumpfile=expdp.dmp ;

    2)并行进程parallel
    expdp system/manager  directory=dpdata dumpfile=scott3.dmp parallel=40 job_name=scott3

 

    3)按表名导
     expdp system/manager TABLES=emp,dept directory=dpdata dumpfile=expdp.dmp;

    4)按查询条件导
    expdp system/manager directory=dpdata dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';

    5)按表空间导
     expdp system/manager DIRECTORY=dpdata DUMPFILE=tablespace.dmp  TABLESPACES=temp,example;

    6)导整个数据库
     expdp system/manager DIRECTORY=dpdata DUMPFILE=full.dmp FULL=y;


    五. 还原数据
    1)导到指定用户下
     impdp system/manager DIRECTORY=dpdata DUMPFILE=expdp.dmp SCHEMAS=scott;

    2)改变表的owner
     impdp system/manager DIRECTORY=dpdata DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;

    3)导入表空间
     impdp system/manager DIRECTORY=dpdata DUMPFILE=tablespace.dmp TABLESPACES=example;

    4)导入数据库
     impdb system/manager DIRECTORY=dpdata  DUMPFILE=full.dmp FULL=y;

    5)追加数据
      impdp system/manager DIRECTORY=dpdata DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION=append;

 

    6)并行命令

从oss_scap_83(db_link名)导出scap用户,然后导入到本地数据库上scap用户上

impdp system/oracle NETWORK_LINK=oss_scap_83 directory=dpdata SCHEMAS=scap job_name=expdmp parallel=4

posted @ 2015-06-26 10:18  果然  阅读(210)  评论(0编辑  收藏  举报