`

修改oracle 9i http服务的端口

 
阅读更多

Oracle和Tomcat端口冲突
今天新装了Oracle 9i 结果启动Tomcat后打开 http://localhost:8080 出来的是oracle的相关页面,管理工具—服务中关掉oracle的http服务再启动tomcat又好了,看来端口有冲突。
查了一下,改动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"改为 port="8081"就ok了,可不要改成80等热门端口哟
oracle网上也有改动方法,但对oracle还不会用,没有试
改变或关闭Oracle XDB的ftp和http端口
Oracle 9i开始,创建数据库时默认包含了XDB特性。一旦启动了数据库和Listener,Oracle XDB的http服务就占用8080端口,刚好和JBoss、Tomcat等默认端口冲突。因此,必须有一个做出更改。改Tomcat等容易,只是一时不知道怎么改XDB的配置。
在Google上搜索一下,找到了答案。原来Oracle XDB的端口设置不在配置文件中,而是在数据库里。修改XDB的http和ftp服务端口的方法有3种:
1.使用sys登录Oracle,利用dbms_xdb修改端口设置
SQL> -- Change the HTTP/WEBDAV port from 8080 to 8081
SQL> call dbms_xdb.cfg_update(updateXML(
2 dbms_xdb.cfg_get()
3 , '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()'
4 , 8081))
5 /
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.
2.使用OEM console,选择数据库,XML Database,Configuration。更改XDB的有关设置。
3.去掉数据库的初始化参数: dispatchers='(PROTOCOL=TCP) (SERVICE=XDB)',将会禁止XDB的http和ftp服务。



修改oracle监听占用的8080端口

SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
   2 '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()',8081))
   3 /
  SQL> commit;
    Commit complete.
   SQL> exec dbms_xdb.cfg_refresh;
    [oracle@test11 oracle]$ sqlplus /nolog
    SQL*Plus: Release 9.2.0.4.0 - Production on Sat Aug 6 14:24:49 2005
     Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
    SQL> connect / as sysdba;
  Connected.
  -- 把HTTP/WEBDAV端口从8080改到8081
  SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
   2 '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()',8081))
   3 /
    Call completed.
  -- 把FTP端口从2100改到2111
  SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
   2 '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()',2111))
   3 /
    Call completed.
    SQL> commit;
    Commit complete.
    SQL> exec dbms_xdb.cfg_refresh;
    PL/SQL procedure successfully completed.
  -- 检查修改是否已经成功
  SQL> select dbms_xdb.cfg_get from dual;
     CFG_GET
  --------------------------------------------------------------------------------
  <xdbconfig xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd" xmlns:xsi="http://w

    SQL>
  [oracle@test11 oracle]$ netstat -ntlp
  (Not all processes could be identified, non-owned process info
   will not be shown, you would have to be root to see it all.)
  Active Internet connections (only servers)
  Proto Recv-Q Send-Q Local Address      Foreign Address  State    PID/Program name
  tcp    0   0 0.0.0.0:32768      0.0.0.0:*     LISTEN   -
  tcp    0   0 127.0.0.1:32769     0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:2401      0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:33730      0.0.0.0:*     LISTEN   14987/ora_d000_szdb
  tcp    0   0 0.0.0.0:873       0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:110       0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:111       0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:8081      0.0.0.0:*     LISTEN   2473/tnslsnr
  tcp    0   0 0.0.0.0:1521      0.0.0.0:*     LISTEN   2473/tnslsnr
  tcp    0   0 127.0.0.1:631      0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:25       0.0.0.0:*     LISTEN   -
  tcp    0   0 0.0.0.0:2111      0.0.0.0:*     LISTEN   2473/tnslsnr
  tcp    0   0 :::11009        :::*       LISTEN   -
  tcp    0   0 ::ffff:127.0.0.1:4001  :::*       LISTEN   -
  tcp    0   0 ::ffff:127.0.0.1:4002  :::*       LISTEN   -
  tcp    0   0 :::9090         :::*       LISTEN   -
  tcp    0   0 ::ffff:127.0.0.1:12005 :::*       LISTEN   -
  tcp    0   0 :::12009        :::*       LISTEN   -
  tcp    0   0 :::8080         :::*       LISTEN   -
  tcp    0   0 :::80          :::*       LISTEN   -
  tcp    0   0 :::22          :::*       LISTEN   -

  tcp    0   0 ::ffff:127.0.0.1:11005 :::*       LISTEN   -
  [oracle@test11 oracle]$


Oracle数据库取消8080端口占用
安装Oracle数据库后,当我们访问8080端口时,会弹出一个XDB窗口,要求输入用户名和密码。这样将和我们本地一些使用该端口的应用冲突,比如tomcat、jboss等,虽然这些端口是可以修改的,但总是不爽oracle一直占用这个端口。以下是我找到的一个方法,我已经试验成功了,如果你想用此法进行修改,请首先备份数据库重要内容,如果操作不慎,难免要重装数据库。
Oracle数据库可以使用TCP协议通过8080端口进行连接,所以占用了8080端口。
要取消占用,可以打开Oracle安装目录下的database目录内的SPFILE[SID名].ORA文件进行修改。这个文件是Oracle的启动配置文件。
  把其中的*.dispatchers=’(PROTOCOL=TCP) (SERVICE=or9iXDB)’这一行去掉即可。
  然后重启计算机,或者在服务中重启OracleService[SID名]这个服务。重启后可能无法使用Enterprise Manager Console和其他客户端连接,这时请使用Oracle的Configuration and Migration Tools/Net Configuration Assistant工具删除监听器,然后新建一个监听器,重启监听器。
  使用Configuration and Migration Tools/Net Manager工具,将服务命名删除,然后新建一个。
  现在Oracle应该就可以正常使用,8080也不会占用了。


修改Oracle XDB默认监听端口

默认情况下, oracle listener监听1521 端口接受客户端对数据库的访问, 使用lsnrctl stat可以查看当前监听器的情况:
oracle@blueice:~/product/9.2.0/network/admin$ lsnrctl start
LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 15-JUL-2006 09:31:16
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Starting /home/oracle/product/9.2.0/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 9.2.0.4.0 - Production
System parameter file is /home/oracle/product/9.2.0/network/admin/listener.ora
Log messages written to /home/oracle/product/9.2.0/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=blueice.blueice.com)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 9.2.0.4.0 - Production
Start Date 15-JUL-2006 09:31:16
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /home/oracle/product/9.2.0/network/admin/listener.ora

Listener Log File /home/oracle/product/9.2.0/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=1521)))
Services Summary...
Service &quot;orcl.blueice.com&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status UNKNOWN, has 1 handler(s) for this service...

The command completed successfully

oracle@blueice:~/product/9.2.0/network/admin$ lsnrctl stat

LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 15-JUL-2006 09:31:19

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=blueice.blueice.com)(PORT=1521)))

STATUS of the LISTENER

------------------------

Alias LISTENER

Version TNSLSNR for Linux: Version 9.2.0.4.0 - Production

Start Date 15-JUL-2006 09:31:16

Uptime 0 days 0 hr. 0 min. 2 sec

Trace Level off

Security OFF

SNMP OFF

Listener Parameter File /home/oracle/product/9.2.0/network/admin/listener.ora

Listener Log File /home/oracle/product/9.2.0/network/log/listener.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=1521)))

Services Summary...

Service &quot;orcl.blueice.com&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status UNKNOWN, has 1 handler(s) for this service...

The command completed successfully

使用root用户运行netstat -lnp|grep tns可以看到当前listener监听的端口

blueice:/home/oracle/product/9.2.0# netstat -lnp|grep tns

tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN 10583/tnslsnr


unix 2 [ ACC ] STREAM LISTENING 88815 10583/tnslsnr /var/tmp/.oracle/s#10583.1

数据库启动后, oracle listener增加了XDB的监听端口, lsnrctl stat结果如下

blue_stone@blueice:~$ lsnrctl stat

LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 15-JUL-2006 09:34:29

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=blueice.blueice.com)(PORT=1521)))

STATUS of the LISTENER

------------------------
Alias LISTENER

Version TNSLSNR for Linux: Version 9.2.0.4.0 - Production

Start Date 15-JUL-2006 09:31:16

Uptime 0 days 0 hr. 3 min. 12 sec

Trace Level off

Security OFF

SNMP OFF

Listener Parameter File /home/oracle/product/9.2.0/network/admin/listener.ora

Listener Log File /home/oracle/product/9.2.0/network/log/listener.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=8080))(Presentation=HTTP)(Session=RAW))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=2100))(Presentation=FTP)(Session=RAW))

Services Summary...

Service &quot;orcl&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status READY, has 1 handler(s) for this service...

Service &quot;orcl.blueice.com&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status UNKNOWN, has 1 handler(s) for this service...

Service &quot;orclXDB&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status READY, has 1 handler(s) for this service...
The command completed successfully
root用户运行netstat -lnp|grep tns结果如下

blueice:/home/oracle/product/9.2.0# netstat -lnp|grep tns

tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 10583/tnslsnr

tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN 10583/tnslsnr

tcp 0 0 0.0.0.0:2100 0.0.0.0:* LISTEN 10583/tnslsnr

unix 2 [ ACC ] STREAM LISTENING 88815 10583/tnslsnr /var/tmp/.oracle/s#10583.1

但是有些情况下, 我们并不希望8080或者2100端口被oracle使用, 这就需要修改修改oracle XDB的监听端口来达到这样的目标.

在linux 下使用ftp databasehost 2100联接到oracle, 在windows下可以使用ftp://databasehost:2100/联接到oracle, 输入用户名system, 密码system的密码. 下载xdbconfig.xml文件, 使用兼容unix的编辑工具如vi或者写字板对这个文件进行修改, 如需修改ftp监听端口, 则修改

&lt;ftpconfig&gt;

&lt;ftp-port&gt;2100&lt;/ftp-port&gt;

&lt;ftp-listener&gt;local_listener&lt;/ftp-listener&gt;

&lt;ftp-protocol&gt;tcp&lt;/ftp-protocol&gt;

&lt;session-timeout&gt;6000&lt;/session-timeout&gt;

&lt;/ftpconfig&gt;

中的2100为目的端口. 如许修改http监听的端口则修改

&lt;httpconfig&gt;

&lt;http-port&gt;8080&lt;/http-port&gt;

&lt;http-listener&gt;local_listener&lt;/http-listener&gt;

&lt;http-protocol&gt;tcp&lt;/http-protocol&gt;

&lt;session-timeout&gt;6000&lt;/session-timeout&gt;

&lt;server-name&gt;XDB HTTP Server&lt;/server-name&gt;

&lt;max-header-size&gt;16384&lt;/max-header-size&gt;

中的8080为目的端口. 修改完毕后, 上传回原来的位置. 比如我们将http监听的端口修改为8081后, 使用lsnrctl和netstat -lnp|grep tns结果如下

blue_stone@blueice:~$ lsnrctl stat

LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 15-JUL-2006 09:46:06
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=blueice.blueice.com)(PORT=1521)))

STATUS of the LISTENER

------------------------
Alias LISTENER

Version TNSLSNR for Linux: Version 9.2.0.4.0 - Production

Start Date 15-JUL-2006 09:31:16

Uptime 0 days 0 hr. 14 min. 50 sec

Trace Level off

Security OFF

SNMP OFF

Listener Parameter File /home/oracle/product/9.2.0/network/admin/listener.ora

Listener Log File /home/oracle/product/9.2.0/network/log/listener.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=2100))(Presentation=FTP)(Session=RAW))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=blueice.blueice.com)(PORT=8081))(Presentation=HTTP)(Session=RAW))

Services Summary...

Service &quot;orcl&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status READY, has 1 handler(s) for this service...

Service &quot;orcl.blueice.com&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status UNKNOWN, has 1 handler(s) for this service...

Service &quot;orclXDB&quot; has 1 instance(s).

Instance &quot;orcl&quot;, status READY, has 1 handler(s) for this service...

The command completed successfully

blueice:/home/oracle/product/9.2.0# netstat -lnp|grep tns

tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 10583/tnslsnr

tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN 10583/tnslsnr
tcp 0 0 0.0.0.0:2100 0.0.0.0:* LISTEN 10583/tnslsnr

unix 2 [ ACC ] STREAM LISTENING 88815 10583/tnslsnr /var/tmp/.oracle/s#10583.1

监听的端口已经发生了改变.

也可以使用SYSTEM用户登录运行如下语句修改http, ftp端口

BEGIN

DBMS_XDB.CFG_UPDATE(UPDATEXML(DBMS_XDB.CFG_GET(),'/xdbconfig/descendant::ftp-port/text()','2121'));

DBMS_XDB.CFG_UPDATE(UPDATEXML(DBMS_XDB.CFG_GET(),'/xdbconfig/descendant::http-port/text()','8085'));

DBMS_XDB.CFG_REFRESH();

END;

但我在运行上面语句的时候提示PLS-00201: identifier 'UPDATEXML' must be declared

原因未知.

如果不需要使用xml db, 也可以删除xdb用户, 使oracle不监听http和ftp端口

drop user xdb cascade;

分享到:
评论

相关推荐

    解决Oracle 9i和Tomcat的端口冲突

    本文介绍了解决Oracle 9i和Tomcat的端口冲突的方法。

    如何解决Oracle 9i与Tomcat的端口冲突

    在学习和工作的过程中,我们可能在调试程序时发现...如果出现这种情况,本文介绍了如下三种方法来解决问题:更改TOMCAT的默认端口、使用Enterprise Manager Console、使用sys登录Oracle,利用dbms_xdb修改端口设置。

    Oracle9i iSqlPlus介绍

    iSqlPlus 是Oracle9i 提供的新功能,是Sqlplus 的Web 形式发布。是基于三层结构设计的。 其client、middle、server 可以位于同一台机器上也可以位于不同的机器。iSqlPlus 不需要单 独安装,访问iSqlPlus 你只需要...

    NC软件安装与设置一、 安装及设置Oracle 9i或oracle10G

    1、 oralce9i安装盘4张,从disk1开始安装至disk3结束,全部为默认安装,端口号:2030; 2、 设置全部数据库名称:XXX,SID:XXX;为用户sys和system设置口令; 3、 安装完成后,登录Oracle的Enterprise Manager ...

    在防火墙上开放Oracle服务端口的方法

    Oracle服务端口方面会有很多的问题,下面将为您介绍在防火墙上开放Oracle服务端口的...  近来由于工作需要,在Windows XP平台上安装了Oracle9i数据库作为测试之用,一切正常。但当客户机连接服务器时却总是超时,我

    Oracle9i的安装全过程

    这是针对oracle安装过程中的问题的一个综合解决方案,它包括如何删除掉以前安装oracle失败时的残留信息(包括注册表信息),安装过程详细图解,Oracle端口的更改,以及使用net Manager连接外部的oracle数据库。

    Oracle9i的init.ora参数中文说明

    Oracle9i初始化参数中文说明 Blank_trimming: 说明: 如果值为TRUE, 即使源长度比目标长度 (SQL92 兼容) 更长, 也允许分配数据。 值范围: TRUE | FALSE 默认值: FALSE serializable: 说明: 确定查询是否获取表级...

    oracle从零到精通(新手必看)

    版本主要分为:Oracle9i,Oracle10i(i表示internet),Oracle11g(g表示grid),Oracle12c(Cloud融合云计算服务器)。 Oracle数据库的主端口:1521。 Oracle服务器由实例和数据库组成。实例:理解为对象,看不见。...

    Oracle双机热备安装手册

    oracle双机热备安装手册: DL580G2本身2个72GB硬盘做RAID1,安装WIN2000 ADVANCE SERVER +SP4.硬盘只有一个分区C:,光盘为D盘; DL580G2本身2个72GB硬盘做RAID1,安装WIN2000 ADVANCE SERVER + SP4....ORACLE 9i信息;

    windows平台下orcle端口映射

    在Windows XP平台上安装了Oracle9i数据库作为测试之用,一切正常。但当客户机连接服务器时却总是超时,我首先想到了防火墙,当我打开1521端口时,连接操作仍然失败。我又怀疑网络有问题,用telnet server_ip:1521尝试...

    ArcSDE 9 安装指南

    ArcSDE支持多种数据库系统,包括SQL Server、Oracle等,本系统采用ArcSDE for Oracle9i。...ArcSDE安装程序会创建一个名为esri_sde的服务,该服务由NT系统帐号维护,它依赖于Oracle9i的服务MSSQLSERVER。

    Oracle服务器配置和管理.pptx

    新的Oracke数据库仍然以"g"作为版本后缀,以代表这是一个包含了网格计算技术的数据库软件(Oracle自10版本开始以g作为版本后缀,而在这之前是使用"i",如Oracle8i、Oracle9i,表示基于网络的数据库)。据悉,新版本...

    Oracle OLeDB客户端精简版 支持9I ~ 11g 可用于打包 Part5

    端口为1521 数据库名为Test10G的 连接字符串如下, 依据需要自行修改 Provider=OraOLEDB.Oracle;Password=MANAGER;User ID=SYSTEM;Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.199)...

    Oracle 10g 学习笔记

    │ Oracle9i数据库管理实务讲座.pdf │ OraclePLSQL语言基础.exe │ Oracle傻瓜手册.pdf │ oracle最权威工具TOAD使用大全.chm │ oracle的入门心得.pdf │ Oracle程序员开发指南.pdf │ └─北大青鸟...

    Oracle监听器维护管理v1.1

    Oracle监听器维护管理v1.1 1 一、监听器工作原理 3 二、监听器Lisener功能 4 1、 监听客户端请求 4 2、 为客户端请求分配Server Process 4 3、 注册实例服务 4 4、 错误转移failover 4 5、 负载均衡衡量 4 三、监听...

    在Linux系统平台上安装Tomcat的总结

    为了更好的网络共享 本人发布的资源一律免费 如有哪个收费了 请告知! 这是我自己在网上搜集的一部分资料 现打包上传资源 供大家使用参考 希望能...解决Oracle 9i和Tomcat端口冲突 在Linux系统平台上安装Tomcat的总结

    服务器指标要求:.docx

    Oracle 9i企业版本 服务器指标要求:全文共10页,当前为第3页。 省级数据处置惩罚小型机技能指标: 服务器指标要求:全文共10页,当前为第4页。(可选配置1): 服务器指标要求:全文共10页,当前为第4页。 配置和性能...

    服务器指标要求(2021整理).docx

    Oracle 9i企业版本 服务器指标要求(2021整理)全文共10页,当前为第3页。 省级数据处理小型机技术指标: 服务器指标要求(2021整理)全文共10页,当前为第4页。(可选配置1): 服务器指标要求(2021整理)全文共10页,当前...

    java 面试题 总结

    与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。...

Global site tag (gtag.js) - Google Analytics