安装好Oracle9i后,无法运行netca和dbca

    笔者是刚开始学习Oracle,之前参考视频和Oracle的官方文档成功安装好了11g,为了巩固一下学到的知识,又重新在虚拟机上安装Oracle9i,从安装CentOS4.8开始一步一步安装下来还算顺利,只是软件安装完成后,准备运行netca和dbca的时候出现错误,运行不了,错误提示如下:


/u01/jre/1.1.8/bin/../lib/i686/native_threads/libzip.so: symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference (libzip.so)
Unable to initialize threads: cannot find class java/lang/Thread
Could not create Java VM

 

    提示无法创建启动java虚拟机,在网了搜索了一下,找到了解决办法。这是因为默认选择的虚拟机版本不对导致的,需要修改链接文件,链接到正确的版本,具体的是这几个链接:

 

$ORACLE_HOME/JRE -> $ORACLE_BASE/jre/1.3.1

$ORACLE_BASE/jre/1.3.1/bin/jre -> java

$ORACLE_BASE/jre1.3.1/bin/i386/native_threads/jre -> java

 

    这里的$ORACLE_BASE和$ORACLE_HOME要换成你自己在环境变量里设置的值。具体操作是这样:

    先进入$ORACLE_HOME目录,查看JRE这个文件:
[oracle@jacker u01]$ cd $ORACLE_HOME
[oracle@jacker ~]$ ls -l JRE
lrwxrwxrwx  1 oracle oinstall 15 Apr  8 15:20 JRE -> /u01/jre/1.1.8/

    删除这个文件,重新建立一个链接文件,链接到刚才说到的那个目录:

[oracle@jacker ~]$ rm JRE
[oracle@jacker ~]$ ls -l JRE
ls: JRE: No such file or directory
[oracle@jacker ~]$ ln -s $ORACLE_BASE/jre/1.3.1/ JRE
[oracle@jacker ~]$ ls -l JRE
lrwxrwxrwx  1 oracle oinstall 15 Apr  8 15:38 JRE -> /u01/jre/1.3.1/

    进入这个目录$ORACLE_BASE/jre/1.3.1/bin,再创建一个链接文件jre,链接到java:

[oracle@jacker ~]$ cd $ORACLE_BASE/jre/1.3.1/bin
[oracle@jacker bin]$ ln -s java jre
[oracle@jacker bin]$ ls -l jre
lrwxrwxrwx  1 oracle oinstall 4 Apr  8 15:45 jre -> java

    继续到这个目录./i386/native_threads,创建链接文件jre,链接到java:

[oracle@jacker bin]$ cd i386/native_threads/
[oracle@jacker native_threads]$ ln -s java jre
[oracle@jacker native_threads]$ ls -l jre
lrwxrwxrwx  1 oracle oinstall 4 Apr  8 15:48 jre -> java

    现在三个链接文件都创建好了,再运行netca和dbca就正常了。

原文地址:http://hi.baidu.com/ijacker/blog/item/29aa9e267d782526c9955974.html