Hello
Friends,
Faced "ORA-15180: could not open dynamic library odm library, error [open]" which is linked with libodm11.so and libodmd11.so.
Target
system was refreshed from a source system which was enabled to use Oracle Disk
Manager (ODM), hence got source system configuration on target and while
performing database PITR, this did not came easily at nomount stage. Have a
look below.
Following
was the way, how I sorted it out.
$> sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Thu Apr 6 16:42:50
2017
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS
instance
ORA-15180: could not open dynamic library odm library, error [open]
SQL> exit
Disconnected
Checked
$ORACLE_HOME/lib/libod* condition. In your case, some of date related files
may/may not be there.
$> ls -lart $ORACLE_HOME/lib/libod*
-rwxr-xr-x 1
orasid dba 12892 Oct 1 2013
/oracle/SID/112_64/lib/libodm11.a
-rwxr-xr-x 1
orasid dba 8651 Oct 1 2013
/oracle/SID/112_64/lib/libodmd11.so
lrwxrwxrwx 1
orasid dba 12 Sep 5 2015
/oracle/SID/112_64/lib/libodm11.so.Jan24-2016 -> libodmd11.so
lrwxrwxrwx 1
orasid dba 28 Mar 12 13:36
/oracle/SID/112_64/lib/libodm11.so.Mar2817 -> /opt/VRTSodm/lib/libodm64.so
Removed
un-necessary soft links
$> /usr/sbin/unlink
/oracle/SID/112_64/lib/libodm11.so.Jan24-2016
$> /usr/sbin/unlink
/oracle/SID/112_64/lib/libodm11.so.Jan24-2016.12Sep
$> rm /oracle/SID/112_64/lib/libodm11.so.Jan24-2016
$> rm /oracle/SID/112_64/lib/libodm11.so.Mar2817
Check it
now, how it looks like
$> ls -lart $ORACLE_HOME/lib/libod*
-rwxr-xr-x 1
orasid dba 12892 Oct 1 2013
/oracle/SID/112_64/lib/libodm11.a
-rwxr-xr-x 1
orasid dba 8651 Oct 1 2013
/oracle/SID/112_64/lib/libodmd11.so.Oct0117
Checked
for libodm11.a file, how it looks like.
$> ls -ltr libodm*
-rwxr-xr-x 1
orasid dba 12892 Oct 1 2013
libodm11.a
-rwxr-xr-x 1
orasid dba 8651 Oct 1 2013
libodmd11.so.Oct0117
Moved
this to correct name. In your case, this may/may not be there.
$> mv libodmd11.so.Oct0117 libodmd11.so
$> ls -lart $ORACLE_HOME/lib/libod*
-rwxr-xr-x 1
orasid dba 12892 Oct 1 2013
/oracle/SID/112_64/lib/libodm11.a
-rwxr-xr-x 1
orasid dba 8651 Oct 1 2013
/oracle/SID/112_64/lib/libodmd11.so
Finally
linked it.
$> ln -s /oracle/SID/112_64/lib/libodmd11.so libodm11.so
$> ls -lart $ORACLE_HOME/lib/libod*
-rwxr-xr-x 1
orasid dba 12892 Oct 1 2013
/oracle/SID/112_64/lib/libodm11.a
-rwxr-xr-x 1
orasid dba 8651 Oct 1 2013
/oracle/SID/112_64/lib/libodmd11.so
lrwxrwxrwx 1
orasid dba 35 Apr 6 17:08 /oracle/SID/112_64/lib/libodm11.so
-> /oracle/SID/112_64/lib/libodmd11.so
At last,
database was able to start up for database post restore steps.
$> sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Thu Apr 6 17:08:58
2017
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORA-32004: obsolete or deprecated parameter(s) specified for
RDBMS instance
ORACLE instance started.
Total System Global Area 5.7457E+10 bytes
Fixed Size
2260112 bytes
Variable Size
6979322736 bytes
Database Buffers
5.0466E+10 bytes
Redo Buffers
9711616 bytes
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release
11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application
Testing options
Please
write your comments if this helped you and let me know, if I can help you
further.
Thank you Kanhaiya for the informative article.
ReplyDeletethank you
DeleteThis comment has been removed by the author.
ReplyDeleteHi Kanhaiya,
ReplyDeleteI was in between of same problem and found your solution.
It helped me a lots of and saved my time and had learning as well.
Appreciate your excellent blog
appreciate your comments. let me know in case you find issues like this
DeleteThanks for sharing
ReplyDeleteBrilliant Thanks for sharing
ReplyDelete