Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1052655
  • 博文数量: 836
  • 博客积分: 43880
  • 博客等级: 大将
  • 技术积分: 5485
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-20 17:36
文章分类

全部博文(836)

文章存档

2011年(1)

2008年(835)

我的朋友

分类: LINUX

2008-08-20 18:24:55


在启动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. Connectedto: 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. (责任编辑:凌云通)


下载本文示例代码
阅读(367) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~