Technical posts/Oracle

AIX 7.1 / Oracle 12c / DBCA 오류 / UnsatisfiedLinkError exception loading native library: njni12

ODB 2016. 2. 15. 14:24

AIX 7.1 에서 12c DBCA시 발생하는 "UnsatisfiedLinkError exception loading native library: njni12 " 오류 


AIX 7.1 에서 설치를 안전하게 마치고 dbca를 돌리면 아래와 같은 오류가 나온다


UnsatisfiedLinkError exception loading native library: njni12 

java.lang.UnsatisfiedLinkError: njni12 (rtld: 0712-001 Symbol CreateIoCompletionPort was referenced 

from module /oracle/product/12c/lib/libnjni12.so(), but a runtime definition 

of the symbol was not found. 

rtld: 0712-001 Symbol GetMultipleCompletionStatus was referenced 

from module /oracle/product/12c/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.<init>(Unknown Source) 

at oracle.sysman.assistants.util.NetworkUtils.<init>(NetworkUtils.java:298) 

at oracle.sysman.assistants.util.step.StepContext.<init>(StepContext.java:388) 

at oracle.sysman.assistants.dbca.backend.Host.<init>(Host.java:1055) 

at oracle.sysman.assistants.dbca.backend.Host.<init>(Host.java:1048) 

at oracle.sysman.assistants.dbca.wizard.UIHost.<init>(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) 


크흠...


AIX 12.1.0.2 Installation Fails with "rtld: 0712-001 Symbol CreateIoCompletionPort was referenced " (문서 ID 1949184.1)


확인시 문제를 알 수 있다


위 dbca 문제 말고도


relink 시에도


 exec(): 0509-036 Cannot load program sqlplus because of the following errors:

rtld: 0712-001 Symbol CreateIoCompletionPort was referenced

from module /appl/oracle/product/12.1.0/dbhome_1/lib/libttsh12.so(), but a runtime definition

of the symbol was not found.

rtld: 0712-001 Symbol GetMultipleCompletionStatus was referenced

from module /appl/oracle/product/12.1.0/dbhome_1/lib/libttsh12.so(), but a runtime definition

of the symbol was not found.

rtld: 0712-002 fatal error: exiting.


sqlplus 시에도


AXINTFR05346:(FIPSCOP1)/appl/oracle/product/12.1.0/dbhome_1/bin> sqlplus / as sysdba

exec(): 0509-036 Cannot load program sqlplus because of the following errors:

rtld: 0712-001 Symbol CreateIoCompletionPort was referenced

from module /appl/oracle/product/12.1.0/dbhome_1/lib/libttsh12.so(), but a runtime definition

of the symbol was not found.

rtld: 0712-001 Symbol GetMultipleCompletionStatus was referenced

from module /appl/oracle/product/12.1.0/dbhome_1/lib/libttsh12.so(), but a runtime definition

of the symbol was not found.

rtld: 0712-002 fatal error: exiting. 


위와같이 오류가 발생된다고 한다


문제는 IOCP모듈이 활성화 되어있지 않기 때문에 발생하는 문제로 아래와 같이 해결한다


1. 설정값 확인


$ lsdev |grep iocp

  iocp0        Defined   I/O  Completion Ports


2. Available로 변경


# smitty iocp

 - Select Change /Show Characteristics of I/O Completion Ports

 - Change configured state at system restart from Defined to Available.


3. 재부팅 필요 (재부팅을 안하면 적용이 안된다) 


4. 확인


$ lsdev |grep iocp

  iocp0        Available   I/O  Completion Ports


5. relink all

$ORACLE_HOME/bin/relink all


6. dbca






"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."