更改oracle的监听端口

本文介绍了解决Oracle监听进程与JBoss在8080端口上的冲突问题。通过更改Oracle的监听端口为8081,确保JBoss能够正常启动并使用8080端口。

问题描述:Oracle和JBoss都装在一台机器上了,Oracle已经启动,当启动JBoss时报8080端口已占用,

在cmd中输入 netstat -ano 看到8080端口的进程PID,通过任务管理器得知是TNSLSNR.EXE进程(Oracle监听进程)

 

解决方法:将Oracle监听进程由8080改成8081

1、在oracle 安装文件夹下面搜索一下文件中含有8080 的文件,里面有个readme讲怎么改端口
2、登录sqlplus,输入下面命令

SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
  2  '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()',8081))
  3  /
SQL> commit;
SQL>  exec dbms_xdb.cfg_refresh;

 

附上打印内容:

C:/> 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  system 

Enter password:

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> exit

在Windows系统下,当Oracle监听端口(如默认的1521)被占用或被系统保留,导致Oracle监听器无法正常启动时,可以采取以下措施解决该问题: ### 1. 检查端口占用情况 使用 `netstat` 命令查看端口是否被占用: ```bash netstat -aon | findstr :1521 ``` 如果命令未返回任何结果,说明端口可能被Windows系统保留[^1]。 ### 2. 检查Windows保留端口范围 Windows系统可能会在启动时随机预留一部分端口供系统使用。可以通过以下命令查看当前的保留端口范围: ```bash netsh interface ipv4 show excludedportrange protocol=tcp ``` 如果发现1521端口在保留范围内,则需要调整系统保留的端口范围,以避免冲突。 ### 3. 修改系统保留端口范围 通过以下命令调整系统保留端口范围,将1521排除在保留范围之外: ```bash netsh interface ipv4 set dynamicport tcp start=49152 num=16384 ``` 上述命令将TCP动态端口分配范围设置为49152到65535,确保1521端口不被系统占用[^1]。 ### 4. 修改Oracle监听端口 如果不想更改系统端口范围,也可以修改Oracle监听器使用的端口。编辑 `listener.ora` 文件,修改监听端口: ```plaintext LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 8080)) ) ) ``` 保存后重启Oracle监听服务,使其使用新的端口[^2]。 ### 5. 重启Oracle监听服务 修改配置后,需重启Oracle监听服务以使更改生效。可以通过以下方式重启服务: - 打开“服务”管理器(通过“运行”输入 `services.msc`)。 - 找到 `OracleOraDb11g_home1TNSListener` 或类似名称的服务。 - 右键选择“重启”。 ### 6. 验证监听状态 使用 `lsnrctl` 命令验证监听器状态: ```bash lsnrctl status ``` 如果显示监听器正在运行且端口正确,则说明问题已解决。 ### 7. 防止未来端口冲突 为避免未来再次出现类似问题,建议: - 将Oracle监听端口设置为非默认端口(如8080、8090等)。 - 确保系统保留端口范围与数据库服务端口无冲突。 - 定期检查端口使用情况,防止其他应用程序占用监听端口[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值