遇到的问题:安装虚拟机Vmware之后,打开系统项目虚拟机,经过以下处理步骤 1) root (123456) 2)启动Oracle 2.1 su - oracle (oracle) 2.2 lsnrctl start --启动Listener 2.3 sqlplus / as sysdba 2.4 startup 2.5 exit 3)启动JBOSS 3.1 su - portal (portal) 3.2 cd Jboss/bin 3.3 ./startup.sh 在处理 lsnrctl start 启动监听器的时候,控制台抛出以下错误信息: LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 15-10??-2010 12:32:19 Copyright (c) 1991, 2005, Oracle. All rights reserved. Starting /home/oracle/10.2.0/db_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 10.2.0.1.0 - Production System parameter file is /home/oracle/10.2.0/db_1/network/admin/listener.ora Log messages written to /home/oracle/10.2.0/db_1/network/log/listener.log Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cmms)(PORT=1521))) Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) TNS-12543: TNS:destination host unreachable TNS-12560: TNS:protocol adapter error TNS-00513: Destination host unreachable Linux Error: 101: Network is unreachable 处理过程: Oracle 的 listener.ora 文件里面HOST后面应该输入IP地址还是主机名呢?最好使用主机名。很多时候,一个机器绑定的不止一个IP地址,如果HOST后面是IP地址,那么Oracle的Listener只会监听指定的IP地址的访问请求,本机其他的IP地址的连接都会拒绝的。当创建监听的时候,listener.ora 文件里面默认创建的是主机名。那么,企业、邮局,如果没有特别的需要,如果没有特别的需要就不要画蛇添足的去修改host_name为IP地址了。但是,如果HOST后面是主机名,那么就会与/etc/hosts 这个文件扯上关系了。 第一种情况:/etc/hosts文件oracle没有权限访问 在etc下打开终端 [root@localhost etc]# l hosts 这时候oracle用户去启动listener, [oracle@localhost admin]$ lsnrctl start [oracle@localhost admin]$ lsnrctl start 第二种情况,就是现在遇到的情况是:2、/etc/hosts文件里面的主机名对应的IP地址没有在本机绑定 查看本机/etc/hosts文件里面主机定义的IP信息,用以下命令 [root@localhost etc]# cat /etc/hosts 查找本机的IP地址有没有指定的IP,用以下命令 [root@localhost etc]# ifconfig|grep xxxx.xxxx.xxxx.xxxx 现在问题明朗了,通过cat /etc/hosts命令查看etc/hosts文件中主机对应的ip为192.168.238.128 但是我安装虚拟机的时候,virtual network editor (虚拟网络编辑器)中类型为Host-only的VMnet1 定义的子网IP为192.168.89.0,与192.168.238.128中的网段有冲突, 因此更改为192.168.89.128,问题解决。 因此当吧虚拟机中的项目拷贝到另一个电脑中时,由于虚拟机的安装环境更改需要更改以下虚拟网络IP (责任编辑:IT) |