Temat: Oracle :)
Może kto na szybko pomoże :)
Postawiłem sobie Oracle 12 na linuksie ( Mint 15 ). Proces instalacji wydał się jak najbardziej prawidłowy, więc chciałem utworzyć bazę i po wywołaniu polecenia "dbca" wywala mi komunikatem:
UnsatisfiedLinkError exception loading native library: njni12
java.lang.UnsatisfiedLinkError: /oracle/base/dbhome_1/lib/libnjni12.so: libaio.so.1: cannot open shared object file: No such file or directory
Exception in thread "main" java.lang.UnsatisfiedLinkError: oracle.net.common.NetGetEnv.get(Ljava/lang/String;)Ljava/lang/String;
at oracle.net.common.NetGetEnv.get(Native Method)
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:1050)
at oracle.sysman.assistants.dbca.backend.Host.<init>(Host.java:1043)
at oracle.sysman.assistants.dbca.wizard.UIHost.<init>(UIHost.java:241)
at oracle.sysman.assistants.dbca.wizard.InteractiveHost.<init>(InteractiveHost.java:60)
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)
Poszukałem sobie po sieci ten błąd i coś tam znalazłem, ale kompletnie nie ogarniam o co im chodzi :)
Więc zacząłem po swojemu dłubać ( muszę szczerze przyznać, że kompletnie nie rozumiem tych całych zależności bibliotecznych linukso-uniksowych :) ) i znalazełem to libnjni12.so, więc zrobiłem "ldd libnjni12.so" co wyrzuciło takie coś:
linux-vdso.so.1 => (0x00007fff0f3fe000)
libclntsh.so.12.1 => /usr/lib/libclntsh.so.12.1 (0x00007fc84960b000)
libclntshcore.so.12.1 => /usr/lib/libclntshcore.so.12.1 (0x00007fc849098000)
libmql1.so => not found
libipc1.so => not found
libnnz12.so => not found
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc848e92000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc848b8d000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fc848970000)
libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007fc848755000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fc84854d000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc848184000)
libnnz12.so => /oracle/base/dbhome_1/lib/libnnz12.so (0x00007fc847a79000)
libmql1.so => /oracle/base/dbhome_1/lib/libmql1.so (0x00007fc847803000)
libons.so => /oracle/base/dbhome_1/lib/libons.so (0x00007fc8475be000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc84c808000)
libaio.so.1 => not found
libipc1.so => /oracle/base/dbhome_1/lib/libipc1.so (0x00007fc84723f000)
No i naprzykład przeszukałem to niby brakujące libaio.so.1 co zwróciło mi taki wynik:
/oracle/base/dbhome_1/lib/stubs/libaio.so.1 ( to 'oryginał' )
/usr/lib/libaio.so.1 ( to link do powyższego oryginału )
Czyli wydawało by mi się, że wszystko powinno być OK, więc dlaczego twierdzi że libaio.so.1 => not found?
Edit: Można temat wywalić, po dogłębniejszym badaniu okazało się, że ten link do libaio.so.1 był skopsany :)
Ostatnio edytowany przez jury (2014-08-16 20:59:46)