Today one of our servers crashed and the server (whole
server) was restored from the backup. It took some time to be restored one by
one. Meanwhile when things are set, I tried to startup the database, I got a
different error that I have not seen that before.
/home/oracle /> sqlplus "/
as sysdba"
/usr/lib/pa20_64/dld.sl: Unsatisfied
code symbol 'gethrtime' in load module
'/mnt1/app/oracle/product/9.2.0/bin/sqlplus'.
Abort(coredump)
This surely is not due to a database fault. When searched
for solutions, found that this is the problem with relinking of oracle
binaries.
Relinking of oracle binaries takes place automatically when
-
- An Oracle
product has been installed with an Oracle provided installer.
- An Oracle
patch set has been applied via an Oracle provided installer.
Let's look how to relink oracle binaries, if it requires at
times. At times! Those times are when -
- An OS
upgrade has occurred.
- A change
has been made to the OS system libraries. This can occur during the application
of an OS patch.
- A new
install failed during the relinking phase.
-
Individual Oracle executables core dump during initial startup.
- An
individual Oracle patch has been applied with explicit relink instructions or
the relink is integrated into the patch install script.
Step 1 : Login as Oracle user
and Set environment parameters such as $ORACLE_HOME, $ORACLE_BASE, $PATH,
$LD_LIBRARY_PATH
Step 2 : Shut down all
databases and listeners running on the server.
Step 3 : Relink the
components as given below for different version of oracle
Oracle Version 7.3.x
For executables: oracle, exp, imp, sqlldr, tkprof
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install
For executables: svrmgrl, svrmgrm
cd $ORACLE_HOME/svrmgr/lib
make -f ins_svrmgr.mk linstall
minstall
linstall is for svrmgrl, minstall is
for svrmgrm
For executables: sqlplus
cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install
For executables: dbsnmp, oemevent, oratclsh
cd $ORACLE_HOME/network/lib
make -f ins_agent.mk install
For executables: names, namesctl
cd $ORACLE_HOME/network/lib
make -f ins_names.mk install
For executables: tnslsnr, lsnrctl, tnsping, csmnl, trceval,
trcroute
cd $ORACLE_HOME/network/lib
make -f ins_network.mk install
Oracle Version 8.0.x
For executables: oracle, exp, imp, sqlldr, tkprof, mig, dbv,
orapwd, rman, svrmgrl, ogms, ogmsctl
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install
For executables: sqlplus
cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install
For executables: dbsnmp, oemevent, oratclsh, libosm.so
cd $ORACLE_HOME/network/lib
make -f ins_oemagent.mk install
For executables: tnslsnr, lsnrctl, namesctl, names,
osslogin, trcasst, trcroute
cd $ORACLE_HOME/network/lib
make -f ins_network.mk install
Oracle version 8.1.x (8i) or
higher
A "relink" script is provided in the
$ORACLE_HOME/bin directory and can be run as follows.
cd $ORACLE_HOME/bin
relink
$ relink >parameter<
accepted values for parameter:
all, oracle, network, client, client_sharedlib, interMedia, precomp, utilities,
oemagent
Or else you can even do individually one by one as done for
version 8.0.x with a few changes stated below.
Others remain same.
For executables: names, namesctl
cd $ORACLE_HOME/network/lib
make -f ins_names.mk install
For executables: osslogin, trcasst, trcroute, onrsd, tnsping
cd $ORACLE_HOME/network/lib
make -f ins_net_client.mk install
For executables: tnslsnr, lsnrctl
cd $ORACLE_HOME/network/lib
make -f ins_net_server.mk install
Note : There are no
"Relink success" messages displayed at the terminal. If the relink
was failure, it will terminate with errors such as 'Fatal
error', 'Ld: fatal', 'Exit Code 1.
For HP-UX servers, the relink may fail even when done
manually. This is a bug and can be rectified by
applying the following OS patches as per Oracle support.
For 11.0: HP/UX patches PHCO_23770, PHCO_23092 must be
applied.
For 11.11: HP/UX patches PHCO_29029 and PHCO_25569
must be applied.
sounds like LD_LIBRARY_PATH and quite possibly some missing symbolic links to key components.
ReplyDeleteYes, there is a missing symbolic link. It cannot be created manually. So re linking of binaries will clear the issue.
ReplyDelete