zoukankan      html  css  js  c++  java
  • 使用expdp的心得

    第一步:首先使用DBA权限的用户创建directory,我使用system ,可以在服务器本地创建,也可以远程连接sqlplus进行创建,使用的将是服务器上面的路径。要确保创建directory时,操作系统层面的路径已经存在。如果不存在,可以删除directory后,再重新建立directory。

    SQL〉create directory data_pump_dir as 'exphddatapump'; 此处注意,即便操作系统层面不存在相应的目录,也会显示创建成功,但是在执行expdp的时候会出现错误:

    ORA-39002: 操作无效

    ORA-39070: 无法打开日志文件。

    ORA-39087: directory name DUMPDIR is invalid

    第二步:连接到其它dba权限的用户,授权给要使用expdp的用户,,也可远程执行,即expdp 中的userid中的用户,而不是schemas=后面的用户:

    SQL〉grant read,write on directory DUMPDIR to system;

    可以使用角色授权:

    SQL〉grant read,write on directory DUMPDIR to system;

    如果没有授权使用,也会出相应的错误

    第三步:查看管理理员目录,也可远程执行:

    select * from dba_directories;

    建立的directory 都是隶属于sys用户的,列出的路径也都是指服务器上面的,可以在此对照下物理目录是否存在问题。

    注意事项:

    1、需要注意的是,虽然可以远程建立目录、授权和查询,expdp只能在服务器端执行,在客户端执行会出现:

    连接到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Pr

    With the Partitioning, OLAP, Data Mining and Real Application Testing

    ORA-39002: 操作无效

    ORA-39070: 无法打开日志文件。

    ORA-29283: 文件操作无效

    ORA-06512: 在 "SYS.UTL_FILE", line 488

    ORA-29283: 文件操作无效

    等类似的错误。

    2、使用expdp导出的11g的数据可以使用 10g的impdp导入到10g的数据库里面,需要在两个命令里面都添加一个version =10.2.0.1.0 指定相应的版本号。

    3:userid可以这样写,看帮助同样是help=y

    IMPDP USERID='SYS/cuc2009@cucf as sysdba' schemas=sybj directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=10.2.0.1.0

  • 相关阅读:
    PHP中的$_POST变量
    leetcode problem 32 -- Longest Valid Parentheses
    leetcode problem 31 -- Next Permutation
    leetcode problem 11 Container With Most Water
    leetcode problem 10 Regular Expression Matching(动态规划)
    leetcode problem 6 ZigZag Conversion
    leetcode problem (5) Longest Palindromic Substring
    leetcode problem (2-4)
    extern “C”的作用
    C++11中新特性之:unordered_map
  • 原文地址:https://www.cnblogs.com/donghua2014/p/4234108.html
Copyright © 2011-2022 走看看