zoukankan      html  css  js  c++  java
  • 如何修复重编译Datapump工具expdp/impdp

    数据泵工具expdp/impdp是10g中引发的服务器端导入导出外部工具,虽然是外部的binary,但是实际expdp/impdp都依赖于内部的PL/SQL package主要是(dbms_datapump),在很多情况下我们需要修复或重新加载Datapump工具,方法如下:   对于版本10.1:  
    1. Catdp.sql orders the installation of all its components including 
       the Metadata API which was previously installed separately.
       By default catproc.sql invoke this script.
    
    SQL >@ $ORACLE_HOME/rdbms/admin/catdp.sql
    
    2. dbmspump.sql will create DBMS procedures for dataPUMP
    
    SQL >@ $ORACLE_HOME/rdbms/admin/dbmspump.sql
        对于版本10.2:  
    1. Catdph.sql will Re-Install DataPump types and views
    
    SQL >@ $ORACLE_HOME/rdbms/admin/catdph.sql 
    
    Note: If XDB is installed, then it is required to run "catmetx.sql" script also.
    
    Use this code to verify if XDB is installed:
    
    SQL> select substr(comp_name,1,30) comp_name, substr(comp_id,1,10)
         comp_id,substr(version,1,12) version,status from dba_registry;
    
    Sample output if XDB installed,
    
    Oracle XML Database            XDB        -version-   VALID
    
    2. prvtdtde.plb will Re-Install tde_library packages
    
    SQL >@ $ORACLE_HOME/rdbms/admin/prvtdtde.plb 
    
    3. Catdpb.sql will Re-Install DataPump packages
    
    SQL >@ $ORACLE_HOME/rdbms/admin/catdpb.sql 
    
    4.Dbmspump.sql will Re-Install DBMS DataPump objects
    
    SQL >@ $ORACLE_HOME/rdbms/admin/dbmspump.sql 
    
    5. To recompile  invalid objects, if any
    
    SQL >@ $ORACLE_HOME/rdbms/admin/utlrp.sql
      对于版本11g :  
    1. Catproc.sql 
    
    SQL >@ $ORACLE_HOME/rdbms/admin/catproc.sql 
    
    2. To recompile invalid objects, if any
    
    SQL >@ $ORACLE_HOME/rdbms/admin/utlrp.sql
        示例使用方法FOR 10.2.0.5:    
    SQL> select * from v$version;
    
    BANNER
    ----------------------------------------------------------------
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi
    PL/SQL Release 10.2.0.5.0 - Production
    CORE    10.2.0.5.0      Production
    TNS for Linux: Version 10.2.0.5.0 - Production
    NLSRTL Version 10.2.0.5.0 - Production
    
    select substr(comp_name,1,30) comp_name, substr(comp_id,1,10)
         comp_id,substr(version,1,12) version,status from dba_registry;
    
    确认XDB未安装
    
    @$ORACLE_HOME/rdbms/admin/catdph.sql 
    
    ....
    
    Package created.
    
    Grant succeeded.
    
    SQL> @ $ORACLE_HOME/rdbms/admin/prvtdtde.plb 
    
    Library created.
    
    No errors.
    
    Package created.
    
    Synonym created.
    
    Package created.
    
    @ $ORACLE_HOME/rdbms/admin/catdpb.sql 
    
    @ $ORACLE_HOME/rdbms/admin/dbmspump.sql 
    
    @ $ORACLE_HOME/rdbms/admin/utlrp.sql
    
    同时可以把expdp、impdp的binary重新编译一遍
    
    cd $ORACLE_HOME/rdbms/lib
    make -f ins_rdbms.mk iexpdp iimpdp
    
    - Linking Datapump Export utility (expdp)
    rm -f /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/expdp
    gcc -o /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/expdp -L/s01/oracle/product/10.2.0.5/db_1/rdbms/lib/ -L/s01/oracle/product/10.2.0.5/db_1/lib/ -L/s01/oracle/product/10.2.0.5/db_1/lib/stubs/   /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/s0udexp.o  /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/defopt.o -ldbtools10 -lclntsh  `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lmm -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10   -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10   `cat /s01/oracle/product/10.2.0.5/db_1/lib/sysliblist` -Wl,-rpath,/s01/oracle/product/10.2.0.5/db_1/lib -lm    `cat /s01/oracle/product/10.2.0.5/db_1/lib/sysliblist` -ldl -lm   -L/s01/oracle/product/10.2.0.5/db_1/lib
    mv -f /s01/oracle/product/10.2.0.5/db_1/bin/expdp /s01/oracle/product/10.2.0.5/db_1/bin/expdpO
    mv /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/expdp /s01/oracle/product/10.2.0.5/db_1/bin/expdp
    chmod 751 /s01/oracle/product/10.2.0.5/db_1/bin/expdp
    
     - Linking Datapump Import utility (impdp)
    rm -f /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/impdp
    gcc -o /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/impdp -L/s01/oracle/product/10.2.0.5/db_1/rdbms/lib/ -L/s01/oracle/product/10.2.0.5/db_1/lib/ -L/s01/oracle/product/10.2.0.5/db_1/lib/stubs/   /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/s0udimp.o  /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/defopt.o -ldbtools10 -lclntsh  `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lmm -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /s01/oracle/product/10.2.0.5/db_1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10   -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10   `cat /s01/oracle/product/10.2.0.5/db_1/lib/sysliblist` -Wl,-rpath,/s01/oracle/product/10.2.0.5/db_1/lib -lm    `cat /s01/oracle/product/10.2.0.5/db_1/lib/sysliblist` -ldl -lm   -L/s01/oracle/product/10.2.0.5/db_1/lib
    mv -f /s01/oracle/product/10.2.0.5/db_1/bin/impdp  /s01/oracle/product/10.2.0.5/db_1/bin/impdpO
    mv /s01/oracle/product/10.2.0.5/db_1/rdbms/lib/impdp /s01/oracle/product/10.2.0.5/db_1/bin/impdp
    chmod 751 /s01/oracle/product/10.2.0.5/db_1/bin/impdp
    
    [oracle@vrh8 lib]$ ls -l $ORACLE_HOME/bin/*pdp
    -rwxr-x--x 1 oracle oinstall 228377 Aug 26 09:15 /s01/oracle/product/10.2.0.5/db_1/bin/expdp
    -rwxr-x--x 1 oracle oinstall 233704 Aug 26 09:15 /s01/oracle/product/10.2.0.5/db_1/bin/impdp
  • 相关阅读:
    MapReduce
    es2.0的语法学习
    java的并发
    JVM的前世今生
    linux环境jacoco接入
    每天一个linux命令--~
    每天一个linux命令--ssh的host配置用户名密码
    jenkins集成robot
    ElasticSearch学习
    rf关键字
  • 原文地址:https://www.cnblogs.com/macleanoracle/p/2967515.html
Copyright © 2011-2022 走看看