`

[转]Oracle XDB Http/Ftp服务默认端口与Tomcat等默认端口冲突解决方案

阅读更多

【原文地址】http://blog.csdn.net/stevene/archive/2006/01/10/575194.aspx


安装 Tomcat 后,启动 tomcat 时,会出现:

2005-10-12 13:46:57 org.apache.commons.modeler.Registry loadRegistry

信息 : Loading registry information

2005-10-12 13:46:57 org.apache.commons.modeler.Registry getRegistry

信息 : Creating new Registry instance

2005-10-12 13:46:57 org.apache.commons.modeler.Registry getServer

信息 : Creating MBeanServer

2005-10-12 13:46:58 org.apache.coyote.http11.Http11Protocol init

严重 : Error initializing endpoint

java.net.BindException: Address already in use: JVM_Bind:8080

       at org.apache.tomcat.util.net.PoolTcpEndpoint.initEndpoint(PoolTcpEndpoint.java:270)

    ……

冲突提示。

在浏览器中访问 http://127.0.0.1:8080 时出现 XDB 登录窗口而不是 Tomcat Welcome 页面,如下:

<shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> </shapetype> <stroke joinstyle="miter"> </stroke> <formulas> </formulas> <f eqn="if lineDrawn pixelLineWidth 0"> </f> <f eqn="sum @0 1 0"> </f> <f eqn="sum 0 0 @1"> </f> <f eqn="prod @2 1 2"> </f> <f eqn="prod @3 21600 pixelWidth"> </f> <f eqn="prod @3 21600 pixelHeight"> </f> <f eqn="sum @0 0 1"> </f> <f eqn="prod @6 1 2"> </f> <f eqn="prod @7 21600 pixelWidth"> </f> <f eqn="sum @8 21600 0"> </f> <f eqn="prod @7 21600 pixelHeight"> </f> <f eqn="sum @10 21600 0"> </f> <lock v:ext="edit" aspectratio="t"> </lock> <shape id="_x0000_i1025" style="width: 180pt; height: 155.25pt;" type="#_x0000_t75"> </shape> <imagedata src="file:///C:%5CDOCUME%7E1%5Czhwang%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.jpg" o:title="loginxdb"> </imagedata>

进入命令行,运行 netstat –a 命令查看端口, 8080 已被占用(如下),什么原因呢?

<shape id="_x0000_i1026" style="width: 414.75pt; height: 220.5pt;" type="#_x0000_t75"> </shape> <imagedata src="file:///C:%5CDOCUME%7E1%5Czhwang%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_image003.jpg" o:title="netstat"> </imagedata>

这是因为这台机器上已经安装了 Oracle 9i 数据库。从 Oracle 9i 开始,创建数据库时默认包含了 XDB 特性。 Oracle9i 支持 XML 数据库, 8080 Oracle XDB XML 数据库) Http 服务的默认端口, Oracle XDB 还有一个 Ftp 服务,默认端口是 2100 。而 Tomcat Jboss 等的默认端口也是 8080 ,所以出现冲突,另外从网上查询得知 Oracle XDB 的端口设置不在配置文件中,而是在数据库里。

那么怎么解决呢?这里介绍四种解决冲突的方式,都比较简单:

一、修改 Tomcat 端口

修改 Tomcat 端口比较容易,在 Tomcat 安装目录 conf 下的 server.xml 文件中,找到 <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"

               port="8080" minProcessors="5" maxProcessors="75"

               enableLookups="true" redirectPort="8443"

               acceptCount="100" debug="0" connectionTimeout="20000"

               useURIValidationHack="false" disableUploadTimeout="true" /> 标签,把 Port=”<chmetcnv unitname="”" sourcevalue="8080" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on"></chmetcnv>8080” 改为 Port=”<chmetcnv unitname="”" sourcevalue="8088" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on"></chmetcnv>8088” 或其他端口就可以了

二、使用 Oracle 控制台修改 Oracle XDB Http/FTP 服务端口

虽然修改 Tomcat 端口可以很容易解决问题,但有时不想修改 Tomcat 端口,可以修改 Oracle XDB 服务端口来避免冲突。

登录 Oracle 控制台可以以独立方式登录,但必须以 SYSDBA 身份登录,否则不能操作 XDB 配置参数。

登录到 Oracle 控制台后,展开 ”XML 数据库 项, XML 数据库下有配置、资源、 XML 方案三个子项。选中配置选项, XML 数据库 参数会显示在右边区域。如图所示:

<shape id="_x0000_i1027" style="width: 415.5pt; height: 190.5pt;" type="#_x0000_t75"> </shape> <imagedata src="file:///C:%5CDOCUME%7E1%5Czhwang%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_image005.jpg" o:title="xmldb"> </imagedata>

修改参数名为 http-port 的项,值 8080 改为 8088 或其他未占用端口值,也可以修改 ftp-port 的值,然后点右下脚“应用( P )”按钮应用新修改的端口值。

这里需要注意的是,每个 Oracle 实例都会默认占用 8080 2100 端口,所以需要修改本机 Oracle 上的所有实例的 XDB 配置。

三、命令行方式 ( Oracle 提供的包 ) 修改 Oralce XDB 端口

1 、进入命令行,连接 sqlplus

 

 

 

 

 

 

 

C:\ >sqlplus /nolog

SQL*Plus: Release <chsdate w:st="on" year="1899" month="12" day="30" islunardate="False" isrocdate="False"></chsdate>9.2.0.1.0 - Production on 星期三 10 12 14:53:56 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL>

2 、以 SYSDBA 身份登录

 

 

 

 

 

 

 

SQL> conn sys/wangzh@test as sysdba

已连接。

3 、修改  HTTP port   8080  改为  8088

 

 

 

 

 

 

 

SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),

  2  '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()'

  3  ,8088))

  4  /

 

 

 

 

 

 

 

调用完成。

4   也可以修改 FTP  端口 ,举例如下,将端口 2100 改为 2111 ,一般情况下不用改就可以。

SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),

  2  '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port /text()'

  3  ,2111))

  4  /

 

 

 

 

 

 

 

调用完成。

5 、提交修改

 

 

 

 

 

 

 

SQL> commit;

 

 

 

 

 

 

 

提交完成。

SQL> exec dbms_xdb.cfg_refresh;

 

 

 

 

 

 

 

PL/SQL 过程已成功完成。

四、使用 Oracle DBCA 向导工具,可以启用、禁用和配置 XML DB 端口号

1 、启动 DBCA DataBase Configuration Assistant )向导

2 、选择“在数据库中配置数据库选项”,单击“下一步”按钮

3 、选择数据库实例名,输入用户名和口令,用户必须具备 DBA 权限,单击“下一步”按钮

4 、数据库特性页,点击“标准数据库功能”按钮打开标准数据库功能页,然后选择 Oracle XML DB 项后的 “自定义”按钮,打开“ Oracle XML DB ”页,如下:

可以选择启用或禁用 XML DB 协议,启用 XML DB 协议的情况下,可以配置端口号。配置端口号有两个选项,使用默认配置或自定义配置

<shape id="_x0000_i1028" style="width: 414.75pt; height: 294pt;" type="#_x0000_t75"> </shape> <imagedata src="file:///C:%5CDOCUME%7E1%5Czhwang%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_image007.jpg" o:title="dbca"> </imagedata>

如上图所示,自定义 FTP HTTP 端口值。然后点“确定”按钮完成配置。

分享到:
评论

相关推荐

    oracle和JBoss、Tomcat等默认端口冲突的解决办法(网上抄来的备用,还未实践)

    本文主要关注的是Oracle数据库与开源应用服务器如JBoss和Tomcat之间的默认端口冲突,以及如何解决这个问题。 Oracle数据库自9i版本开始引入了XDB(XML Database)特性,这是一个内置的XML存储和处理系统。XDB通过...

    Oracle和Tomcat端口冲突

    在本例中,Oracle的XDB(XML Database)特性占用的默认端口8080与Tomcat的默认HTTP端口相同,导致无法正常访问Tomcat的服务。 要解决这个问题,可以采取以下几种策略: 1. **调整Tomcat端口**: - 打开Tomcat的...

    改Oracle8080端口

    然而,在某些环境中,尤其是当服务器上还运行着其他Web应用服务(如JBoss、Tomcat等)时,这些端口可能会被占用,导致端口冲突的问题。为了解决这一问题,可以采取以下三种方法来更改Oracle XDB的HTTP和FTP服务所...

    解决8080端口冲突

    8080端口是非常常见的端口号,许多应用程序和服务都使用这个端口号,例如Tomcat、Oracle等。 解决方法一:修改 Tomcat 的端口号 在这个方法中,我们可以修改 Tomcat 的端口号,以避免端口冲突。具体来说,我们可以...

    端口扫描工具

    Oracle XDB FTP服务,默认的端口号为2100; MS SQL*SERVER数据库server,默认的端口号为1433/tcp 1433/udp; MS SQL*SERVER数据库monitor,默认的端口号为1434/tcp 1434/udp; QQ,默认的端口号为1080/udp

    常用服务器开放端口

    FTP服务默认使用TCP端口21。此端口用于控制命令的传输,而实际的数据传输则可能使用动态端口。 #### 4. Telnet (远程登录协议) Telnet是一种标准的网络协议,用于远程登录到另一台计算机。Telnet服务通常运行在TCP...

    j2EE重要笔记

    此操作将HTTP端口更改为8888,FTP端口禁用。 ### 成为Oracle数据库的SYS用户 要成为Oracle数据库的SYS用户,即获得最高管理员权限,只需在SQL*Plus中输入: ``` connect as sysdba ``` 这将使你以SYSDBA模式连接...

Global site tag (gtag.js) - Google Analytics