新装了一个10.20.5的oracle数据库,在数据库建好之后手动建立监听的时候netca命令报错:

[oracle@db01 samples]$ netca

Oracle Net Services Configuration:
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0x00289b03, pid=6306, tid=4160575712
#
# Java VM: Java HotSpot(TM) Client VM (1.4.2_14-b05 mixed mode)
# Problematic frame:
# C  [libc.so.6+0x69b03]  index+0x63
#
# An error report file with more information is saved as hs_err_pid6306.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
/app/database/product/10.2/db_1/bin/netca: line 190:  6306 Aborted                 $JRE -mx64m $SRVM_PROPERTY_DEFS -Dsun.java2d.font.DisableAlgorithmicStyles=true -classpath $CLASSPATH oracle.net.ca.NetCA $*
[oracle@db01 samples]$

在网上查了一下,说可能是host文件的问题。

于是查看host文件,内容如下:

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1       localhost.localdomain localhost

没有当前主机名的记录,于是修改host文件如下:

127.0.0.1       localhost.localdomain localhost

db01    10.200.221.21

netca 命令执行正常。

出现这个问题的原因可能是在执行命令时,尝试链接这个主机名(不清楚为什么不用ip地址)的机器,无法连上导致。这种情况可能引起netca、sqlplus和dbca执行失败