Change XMLDB Ports

本文介绍了解决Oracle XDB与Tomcat等Web服务器因默认端口相同导致的冲突问题。提供了修改端口的具体步骤,包括使用SQL命令修改Oracle XDB的HTTP和FTP端口,以及通过Tomcat配置文件调整其监听端口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 Windows下通过netstat -an -o -b可知是TNSLSNR.exe占用了8080端口
2 此方法解决Oracle端口与Tomcat等web服务器默认端口冲突的问题
3 修改立即生效

Change XMLDB Ports

This document explains how to change the default ports (8080 for HTTP and 2100 for FTP) in XMLDB.
Oracle XMLDB uses the ports 2100/8080 by default. Sometimes there are problem with other webservers (e.g. JBOSS) running on the same port.

Even if the package dbms_xdb is granted to PUBLIC you need DBA privileges to change the ports.

-- change HTTP port from 8080 to 8083
call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(), '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()', 8083));

-- change FTP port from 2100 to 2111
call dbms_xdb.cfg_update(updateXML( dbms_xdb.cfg_get(), '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()' , 2111));

-- refresh settings
exec dbms_xdb.cfg_refresh;

 

 

****************************************************************************

tomcat 和 OracleSQL的监听器服务 端口冲突
2007年07月05日 星期四 16:28

本人在启动tomcat时有以下错误。

2007-7-5 16:08:28 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:264)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:137)
at org.apache.coyote.tomcat5.CoyoteConnector.initialize(CoyoteConnector.java:1429)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:609)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2384)
at org.apache.catalina.startup.Catalina.load(Catalina.java:507)
at org.apache.catalina.startup.Catalina.load(Catalina.java:528)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:250)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:424)
2007-7-5 16:08:28 org.apache.catalina.startup.Catalina load
严重: Catalina.start
LifecycleException:   Protocol handler initialization failed: java.net.BindException: Address already in use: JVM_Bind:8080
at org.apache.coyote.tomcat5.CoyoteConnector.initialize(CoyoteConnector.java:1431)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:609)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2384)
at org.apache.catalina.startup.Catalina.load(Catalina.java:507)
at org.apache.catalina.startup.Catalina.load(Catalina.java:528)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:250)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:424)

经过本人研究此错误归纳为:严重: Error initializing endpoint
                           严重: Error starting endpoint
                           严重: Catalina.start
                           严重: StandardServer.await: create[8005]:

经过本人研究得出以下结论:tomcat的默认端口为8080而oracle9i中的TNSLSNR.exe进程占用了。

DLL 文件: tnslsnr.exe
DLL 名称: tnslsnr.exe
  
描述:
OracleSQL的监听器服务。


同时你可在cmd窗口中输入netstat -anb 然后回车。即可查看所有的端口占用情况。

此问题还有一个表象:就是输入网页地址会弹出一个要求输入用户名和密码的窗口,窗口名字是叫XDB。
如下图所示:


可以有两种方法解决:
1. 改tomcat的监听端口.
修改$tomcat_home/config/server.xml中host节点的port值
2.修改oracle默认的xdb监听端口
Oracle 9i创建数据库时默认包含了XDB特性。一旦启动了数据库和Listener,Oracle XDB的http服务就占用8080端口,
刚好和JBoss、Tomcat等默认端口冲突,Oracle XDB的端口设置不在配置文件中,而是在数据库里。
修改XDB的http和ftp服务端口的方法有3种:

1、使用sys登录Oracle,利用dbms_xdb修改端口设置

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

-- Change the FTP port from 2100 to 2111
call dbms_xdb.cfg_update(updateXML(
dbms_xdb.cfg_get()
, '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()'
, 1511));
/
COMMIT;


EXEC dbms_xdb.cfg_refresh;


2、使用OEM console,选择数据库,XML Database,Configuration,更改XDB的有关设置。

3、去掉数据库的初始化参数:

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

*********************************************************************************

以上是从网络上找的用命令语句来修改listener port 的方法,但是我试了一试,系统总是报告XDB.DBMS_XDB view 不存在。现在我还没有找出原因!

 

但是下面方法可以很容易修改FTP,WEBDAV port -->2103 ; Http -->8083

使用Oracle 自带的工具Database Configration Assistant:

 当然,修改完后,要重新启动listener服务才能生效。

 

 

资源下载链接为: https://pan.quark.cn/s/d9ef5828b597 四路20秒声光显示计分抢答器Multisim14仿真源文件+设计文档资料摘要 数字抢答器由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分组成主体电路。通过定时电路和译码电路将秒脉冲产生的信号在显示器上输出实现计时功能,构成扩展电路。经过布线、焊接、调试等工作后数字抢答器成形。关键字:开关阵列电路;触发锁存电路;解锁电路;编码电路;显示电路 一、设计目的 本设计是利用已学过的数电知识,设计的4人抢答器。(1)重温自己已学过的数电知识;(2)掌握数字集成电路的设计方法和原理;(3)通过完成该设计任务掌握实际问题的逻辑分析,学会对实际问题进行逻辑状态分配、化简;(4)掌握数字电路各部分电路与总体电路的设计、调试、模拟仿真方法。 二、整体设计 (一)设计任务与要求: 抢答器同时供4名选手4个代表队比赛,分别用4个按钮S0 ~ S3表示。 设置一个系统清除和抢答控制开关S,该开关由主持人控制。 抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。 如果定时时间已到,无人抢答,本次抢答无效。 (二)设计原理与参考电路 抢答器的组成框图如下图所示。它主要由开关阵列电路、触发锁存电路、解锁电路、编码电路和显示电路等几部分组成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值