现网relink oracle之后oracle binary大小变成0,因为缺少rpm包,oracle在make -f *的时候报如下错误:
Exception String: Error in invoking target 'install' of makefile '/home/oracle/oracle10g/plsql/lib/ins_plsql.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Error in invoking target 'install' of makefile '/home/oracle/oracle10g/plsql/lib/ins_plsql.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Exception String: Error in invoking target 'install' of makefile '/home/oracle/oracle10g/ctx/lib/ins_ctx.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Error in invoking target 'install' of makefile '/home/oracle/oracle10g/ctx/lib/ins_ctx.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Exception String: Error in invoking target 'install' of makefile '/home/oracle/oracle10g/network/lib/ins_net_server.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Error in invoking target 'install' of makefile '/home/oracle/oracle10g/network/lib/ins_net_server.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Exception String: Error in invoking target 'install' of makefile '/home/oracle/oracle10g/srvm/lib/ins_srvm.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Error in invoking target 'install' of makefile '/home/oracle/oracle10g/srvm/lib/ins_srvm.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Exception String: Error in invoking target 'install' of makefile '/home/oracle/oracle10g/sqlplus/lib/ins_sqlplus.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
Error in invoking target 'install' of makefile '/home/oracle/oracle10g/sqlplus/lib/ins_sqlplus.mk'. See '/home/oracle/oraInventory/logs/installActions2013-05-30_12-44-18PM.log' for details.
检查并安装缺失的rpm之后解决了该问题,
手动relink oracle
---------------------------------------------------------------------
说明:
(1)Before relinking Oracle, shut downboth the database and the listener.
(2)The following commands will outputa lot of text to your session window. To capture this output for upload tosupport, redirect the output to a file.
(3)If relinking a client installation,it's expected that some aspects of the following commands will fail if thecomponents were not originally installed.
前期准备:
[Step 1] Log into theUNIX system as the Oracle software owner:
=============================================================
Typically this is the user 'oracle'.
[STEP 2] Verify that your$ORACLE_HOME is set correctly:
=============================================================
For all Oracle Versions and Platforms, perform this basic environment check
first:
% cd $ORACLE_HOME
% pwd
Doing this will ensure that $ORACLE_HOME is set correctly in your currentenvironment.
[Step 3] Verify and/or Configure theUNIX Environment for proper relinking:
=============================================================
For all Oracle Versionsand UNIX Platforms:
The Platform specific environment variablesLIBPATH, LD_LIBRARY_PATH, SHLIB_PATHtypically are already set to include system library locations like '/usr/lib'. In most cases, you need only check what they are set to first, then addthe $ORACLE_HOME/lib directory to them where appropriate.
i.e.: %setenv LD_LIBRARY_PATH ${ORACLE_HOME}/lib:${LD_LIBRARY_PATH} (see note:131207.1How to Set UNIX Environment Variables for help with setting UNIX environment variables)
If on AIX with:
--------------
NOTE: Beforerelinking, after stopping all required processes, issue the following as root to detach all files frommemory that are not attached to an active process:
# /usr/sbin/slibclean
Oracle 7.3.X:
- Set LIBPATH to include$ORACLE_HOME/lib
Oracle 8.0.X:
- Set LIBPATH to include$ORACLE_HOME/lib
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib and
$ORACLE_HOME/network/lib (Requiredwhen using Oracle products that use Java)
- Set LINK_CNTRL to L_PTHREADS_D7if using AIX 4.3. ('oslevel' verifies OSversion)
Oracle 8.1.X, 9.X.X, 10.X.X or 11.x.x:
- For 8.1.5, set LINK_CNTRL toL_PTHREADS_D7
- If not 8.1.5, ensure thatLINK_CNTRL is not set
- Set LIBPATH to include$ORACLE_HOME/lib
If on DATA GENERAL AVIION (DG) with:
-----------------------------------
Oracle 7.3.X or 8.0.X:
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib
- ensure TARGET_BINARY_INTERFACEis unset
Oracle 8.1.X:
- Set LD_LIBRARY_PATH toinclude $ORACLE_HOME/lib:$ORACLE_HOME/JRE/lib/PentiumPro/native_threads
If on HP-UX with:
----------------
Oracle 7.3.X,8.0.X, 8.1.X;
- Set SHLIB_PATH to $ORACLE_HOME/lib
If using 64bit 8i Oracle, also
- Set LD_LIBRARY_PATH to$ORACLE_HOME/lib64
- ensure LPATH is unset
Oracle 9.X.X,10.X.X or 11.x.x;
- ensure LPATH is unset
If on NCR with:
--------------
Oracle 7.3.X, 8.0.X or 8.1.X:
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib:/usr/ccs/lib
If on SCO UNIXware with:
-----------------------
Oracle 7.3.X or 8.0.X:
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib
Oracle 8.1.X:
- Set LD_LIBRARY_PATH to include
$ORACLE_HOME/lib:$ORACLE_HOME/JRE/lib/x86at/native_threads
If on SGI with:
--------------
32bit Oracle 7.3.X or 8.0.X:
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib
- Set SGI_ABI to -32
64bit Oracle 8.0.X or 8.1.X (8i isonly available in 64bit):
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib
- Set SGI_ABI to -64
- If one does not already exist,create the file compiler.defaults and
set the COMPILER_DEFAULTS_PATHvariable:
In the Oracle software owner's $HOMEdirectory, create a file called 'compiler.defaults':
% cd $HOME
% echo"-DEFAULT:abi=64:isa=mips3:proc=r10k" > compiler.defaults
Then set the environment variableCOMPILER_DEFAULTS_PATH to point to the $HOME directory.
% setenv COMPILER_DEFAULTS_PATH$HOME
If this is not set, relinking willfail because the compiler defaults to MIPS4 objects although Oracle requiresMIPS3.
- Set LD_LIBRARY64_PATH to includethe $ORACLE_HOME/lib and the $ORACLE_HOME/javavm/admin directories.
- Set LD_LIBRARYN32_PATH toinclude the $ORACLE_HOME/lib32 directory.
NOTE:LD_LIBRARY64_PATH & LD_LIBRARYN32_PATH must be undefined when installingsoftware with Oracle Universal Installer.
If on SOLARIS (Sparc or Intel) with:
------------------------------------
Oracle 7.3.X, 8.0.X, or 8.1.X:
- Ensure that /usr/ccs/bin isbefore /usr/ucb in $PATH
% which ld ....should return '/usr/ccs/bin/ld'
If using 32bit(pre 9i) Oracle,
- SetLD_LIBRARY_PATH=$ORACLE_HOME/lib
If using 64bit(pre 9i) Oracle,
- SetLD_LIBRARY_PATH=$ORACLE_HOME/lib
- SetLD_LIBRARY_PATH_64=$ORACLE_HOME/lib64
Oracle 9.X.X or higher:
- LD_LIBRARY_PATH &LD_LIBRARY_PATH_64 do not need to be set to include a reference to$ORACLE_HOME/lib or $ORACLE_HOME/lib64 for a generic database softwareinstallation. (However they should not contain a reference to the ORACLE_HOMEof another Oracle version)
If on Digital/Tru64,IBM/Sequent PTX, Linux or any other UNIX Platform not mentioned above with:
------------------------------------------------------------------------------
Oracle 7.3.X, 8.0.X, 8.1.X, 9.X.X,10.X.X or 11.x.x:
- Set LD_LIBRARY_PATH to include$ORACLE_HOME/lib
[Step 4] For all Oracle Versions and UNIX Platforms:
=============================================================
Verify that you performed Step 2 correctly:
% env | pg ....make sure that you see the correctabsolute path for
$ORACLE_HOME in the variabledefinitions.
[Step 5] For all Oracle Versions and UNIX Platforms:
=============================================================
Verify umask is set correctly:
% umask
This must return 022. If it does not,set umask to 022.
% umask 022
% umask
[Step 6] Run the OS Commands to Relink Oracle:
=============================================================