zoukankan      html  css  js  c++  java
  • (转载)Oracle10g 数据泵导出命令 expdp 使用总结(一)

    原文链接:http://hi.baidu.com/edeed/item/890626ef6f6d9d265b2d646f

    Oracle10g 数据泵导出命令 expdp 使用总结(二)
    Oracle10g 数据泵导出命令 expdp 使用总结(三)

    1.1.1 expdp使用

    使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录。

    因此使用EXPDP工具时,必须首先建立DIRECTORY对象.并且需要为数据库用户授予使用DIRECTORY对象权限.

    首先得建DIRECTORY:

    SQL> conn /as sysdba
    
    SQL> CREATE OR REPLACE DIRECTORY dir_dump  AS '/u01/backup/';
    
    SQL> GRANT read,write ON DIRECTORY dir_dump TO public;

    1) 导出scott整个schema

    --默认导出登陆账号的schema

    $ expdp scott/tiger@db_esuite parfile=/orahome/expdp.par 

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott_full.dmp
    
        LOGFILE=scott_full.log

    --其他账号登陆, 在参数中指定schemas

    $ expdp system/oracle@db_esuite parfile=/orahome/expdp.par

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott_full.dmp
    
        LOGFILE=scott_full.log
    
        SCHEMAS=SCOTT

    2) 导出scott下的dept,emp表

    $ expdp scott/tiger@db_esuite parfile=/orahome/expdp.par

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott.dmp
    
        LOGFILE=scott.log
    
        TABLES=DEPT,EMP

    3) 导出scott下除emp之外的表

    $ expdp scott/tiger@db_esuite parfile=/orahome/expdp.par

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott.dmp
    
        LOGFILE=scott.log
    
        EXCLUDE=TABLE:"='EMP'"

    4) 导出scott下的存储过程

    $ expdp scott/tiger@db_esuite parfile=/orahome/expdp.par

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott.dmp
    
        LOGFILE=scott.log
    
        INCLUDE=PROCEDURE

    5) 导出scott下以'E'开头的表

    $ expdp scott/tiger@db_esuite parfile=/orahome/expdp.par

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott.dmp
    
        LOGFILE=scott.log
    
        INCLUDE=TABLE:"LIKE 'E%'"   //可以改成NOT LIKE,就导出不以E开头的表

    6) 带QUERY导出

    $ expdp scott/tiger@db_esuite parfile=/orahome/expdp.par

    expdp.par内容: 

        DIRECTORY=dir_dump
    
        DUMPFILE=scott.dmp
    
        LOGFILE=scott.log
    
        TABLES=EMP,DEPT
    
        QUERY=EMP:"where empno>=8000"
    
        QUERY=DEPT:"where deptno>=10 and deptno<=40"

    注: 

      处理这样带查询的多表导出, 如果多表之间有外健关联, 可能需要注意查询条件所筛选的数据是否符合这样的外健约束。

      比如 EMP中有一栏位是 deptno, 是关联dept中的主键, 如果"where empno>=8000"中得出的deptno=50的话。

      那么, 你的dept的条件"where deptno>=10 and deptno<=40"就不包含deptno=50的数据, 那么在导入的时候就会出现错误。

    待续...

     --End--

  • 相关阅读:
    sparkSQL
    Spark分区实例(teacher)
    SparkCore的性能优化
    Linux 输出当前路径下某个文件的绝对路径
    bulid runnable jar file with dependencies
    bulid runnable jar file with dependencies and main class
    spring mvc 整合jsp和thymeleaf两个模板引擎
    解决Volley中的JsonObjectRequest jsonRequest参数无法被服务端读取的问题
    为volley的http请求添加自定义request header
    使用spring-boot-starter-data-jpa 怎么配置使运行时输出SQL语句
  • 原文地址:https://www.cnblogs.com/lichmama/p/4105022.html
Copyright © 2011-2022 走看看