本文转载 来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13790829/viewspace-677049/
$ dbca
UnsatisfiedLinkError exception loading native library: njni12
java.lang.UnsatisfiedLinkError: njni12 (rtld: 0712-001 Symbol CreateIoCompletionPort was referenced
from module /u01/app/oracle/product/12.1.0.2/db_1/lib/libnjni12.so(), but a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol GetMultipleCompletionStatus was referenced
from module /u01/app/oracle/product/12.1.0.2/db_1/lib/libnjni12.so(), but a runtime definition
of the symbol was not found.
rtld: 0712-002 fatal error: exiting.)
Exception in thread “main” java.lang.UnsatisfiedLinkError: oracle/net/common/NetGetEnv.get(Ljava/lang/String;)Ljava/lang/String;
at oracle.net.config.Config.getNetDir(Unknown Source)
at oracle.net.config.Config.initConfig(Unknown Source)
at oracle.net.config.Config.(Unknown Source)
at oracle.sysman.assistants.util.NetworkUtils.(NetworkUtils.java:298)
at oracle.sysman.assistants.util.step.StepContext.(StepContext.java:388)
at oracle.sysman.assistants.dbca.backend.Host.(Host.java:1055)
at oracle.sysman.assistants.dbca.backend.Host.(Host.java:1048)
at oracle.sysman.assistants.dbca.wizard.UIHost.(UIHost.java:241)
at oracle.sysman.assistants.dbca.wizard.InteractiveHost.getInstance(InteractiveHost.java:78)
at oracle.sysman.assistants.dbca.Dbca.getHost(Dbca.java:208)
at oracle.sysman.assistants.dbca.Dbca.execute(Dbca.java:121)
at oracle.sysman.assistants.dbca.Dbca.main(Dbca.java:226)
出现该问题的原因:
IOCP module not enabled on the server.
To check if the IOCP module is enabled, run the lsdev command:
The following sample output shows the IOCP status is set to Defined and hence not enabled:
$ lsdev | grep iocp
iocp0 Defined I/O Completion Ports
解决办法:
Enable the “iocp” option and relink the oracle binaries.
To enable IOCP, set IOCP to Available using the following procedure:
Log in as root and run the following command:
smitty iocp
Change / Show Characteristics of I/O Completion Ports -->
STATE to be configured at system restart available
确认一下已经更改成功:
$ lsdev | grep iocp
iocp0 Available I/O Completion Ports
Relink the binaries using " relink all " and then root.sh as root user:
$ $ORACLE_HOME/bin/relink all
bash-4.3# /u01/app/oracle/product/12.1.0.2/db_1/root.sh
成功啦!