在启动tomcat的时候提示8080端口被占用,后来经过查找发现如下结论:
将oracle与tomcat、jboss等其它占用8080端口的服务器安装在一台机器上,会出现8080端口被占用的错误
一、首先检查8080端口的使用情况
[root@olivenanroot]#lsof-i:8080-n
COMMANDPIDUSERFDTYPEDEVICESIZENODENAME
tnslsnr1031oracle12uIPv42013TCP*:webcache(LISTEN)
[root@olivenanroot]#lsof-itcp:8080-n
COMMANDPIDUSERFDTYPEDEVICESIZENODENAME
tnslsnr1031oracle12uIPv42013TCP*:webcache(LISTEN)
发现8080端口被oracle使用,注意lsof命令参数的使用。
[root@olivenanroot]#lsof-iudp:8080-n
[root@olivenanroot]#lsof-i|grep8080
[root@olivenanroot]#netstat-tln|grep8080
tcp000.0.0.0:80800.0.0.0:*LISTEN
[root@olivenanroot]#
二、查找解决方法
解决方法一、
将*.dispatchers=''(PROTOCOL=TCP)(SERVICE=orclXDB)''
修改为#*.dispatchers=''(PROTOCOL=TCP)(SERVICE=orclXDB)''
[oracle@olivenandbs]$sqlplus"/assysdba"
SQL*Plus:Release9.2.0.4.0-ProductiononFriJul610:37:322007
Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.
Connectedt
Oracle9iEnterpriseEditionRelease9.2.0.4.0-Production
WiththePartitioning,OLAPandOracleDataMiningoptions
JServerRelease9.2.0.4.0-Production
SQL>shutdownimmediate
Databaseclosed.
Databasedismounted.
ORACLEinstanceshutdown.
SQL>createspfilefrompfile;
Filecreated.
SQL>startup
ORACLEinstancestarted.
TotalSystemGlobalArea236000356bytes
FixedSize451684bytes
VariableSize201326592bytes
DatabaseBuffers33554432bytes
RedoBuffers667648bytes
Databasemounted.
Databaseopened.
SQL>exit
[root@olivenanroot]#lsof-i:8080-n
[root@olivenanroot]
结果端口8080停止被占用
三、解决方法二
将xmlDB的端口转换为其它端口,此例转换为8082
SQL>calldbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),''/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text
()'',8082));
Callcompleted.
SQL>execdbms_xdb.cfg_refresh;
PL/SQLproceduresuccessfullycompleted.
将ftp端口由2100转换为2111
SQL>calldbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),''/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text
()'',2111));
Callcompleted.
SQL>commit;
Commitcomplete.
SQL>execdbms_xdb.cfg_refresh;
PL/SQLproceduresuccessfullycompleted.
SQL>
SQL>selectdbms_xdb.cfg_getfromdual;
CFG_GET
SQL>
检查转换结果,发现8080,2100端口停止使用,而8082、2111端口开始使用。
[root@olivenanroot]#lsof-i:8080-n
[root@olivenanroot]#lsof-i:8082-n
COMMANDPIDUSERFDTYPEDEVICESIZENODENAME
tnslsnr1031oracle12uIPv418456TCP*:8082(LISTEN)
[root@olivenanbin]#lsof-i:2100-n
[root@olivenanroot]#lsof-i:2111-n
COMMANDPIDUSERFDTYPEDEVICESIZENODENAME
tnslsnr1031oracle13uIPv418462TCP*:2111(LISTEN)
[root@olivenanroot]#
四、lsof命令的使用
lsof-iTCP:port-n
lsof-iUDP:port-n
lsof-i:port-n
#lsof-itcp:8080-n
以下是转载
************************************
注:上面是解决和XDB冲突的,我发现大部分人问的是和OSE(oracleservletengine)冲突的,现象是访问8080端口时,看到的是一个倔强的小飞猪。
下面是解决方法:
我的oracle是装在D盘,大家可以根据自己情况找
D:oracleora90jisinstall>sess_sh-usys/change_on_install-roleSYSDBA-sjdbc:oracle:oci8:@oradb(这里填你的服务名,我的是
oradb)
——SessionShell——
——type"help"atthecommandlineforhelpmessage
$@serverendp.sshadmin43214322-register
$exit
就能把原来的8080换成4321,把9090换成4322
Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法Linux 解决Oracle Tomcat 8080端口冲突的方法
阅读(474) | 评论(0) | 转发(0) |