现在的位置: 首页 > 综合 > 正文

Oracle和Tomcat端口冲突

2013年02月25日 ⁄ 综合 ⁄ 共 1548字 ⁄ 字号 评论关闭

原因:
    Oracle 9i开始,创建数据库时默认包含了XDB特性。一旦启动了数据库和Listener,Oracle XDB的http服务就占用8080端口,刚好和JBoss、Tomcat等默认端口冲突。

解决方法
 1、改动tomcat端口,
打开D:\Tomcat5\conf\server.xml,查找如下文本位置:
<!-- Define a non-SSL Coyote HTTP/1.1 Connector on the port specified during installation -->
     <Connector port="8080"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                enableLookups="false" redirectPort="8443" acceptCount="100"
                debug="0" connectionTimeout="20000"
                disableUploadTimeout="true" />            修改port="8080"即可。

2.改动oracle 的XDB 8080端口
方法1:(未测试)
   进入 database configuration assistant ,一路Next后会看到,“在数据库中配置数据库选项”,选择你要修改的数据库—>出现“数据库特性”标签,点“标准数据库功能”,再点“自定义”按钮,就能看到配置端口的修改地方。

方法2:(已测试)
使用sys(SYSTEM)登录Oracle SQL Plus,利用dbms_xdb修改端口设置.输入以以下代码:

  SQL> -- Change the HTTP/WEBDAV port from 8080 to 8081
  SQL> call dbms_xdb.cfg_update(updateXML(
           dbms_xdb.cfg_get()
         , '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()'
         , 8081))
     /

成功提示:
Call completed.
SQL> -- Change the FTP port from 2100 to 2111
  SQL> call dbms_xdb.cfg_update(updateXML(
    2         dbms_xdb.cfg_get()
    3       , '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()'
    4       , 2111))
    5  /

  Call completed.

接着输入以下代码(我没有输入了,似乎也可以用)
  SQL> COMMIT;

  Commit complete.

  SQL> EXEC dbms_xdb.cfg_refresh;

  PL/SQL procedure successfully completed.

方法3:(未测试)
去掉数据库的初始化参数:

dispatchers='(PROTOCOL=TCP) (SERVICE=XDB)',将会禁止XDB的http和ftp服务。

PS:Oracle XDB是Oracle 9i介绍的Oracle XML数据库,Oracle XDB数据能通过基于HTTP服务的8080 TCP端口或基于FTP服务的2100端口访问。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/tjpanda88/archive/2009/05/16/4192960.aspx

抱歉!评论已关闭.