oracle12542,ora-12542(Windows2003下 Oracle监听器启动后自动关闭)

今天发现Windows 2003server上的Oracle 监听器无法启动,在Windows服务里启动后立即停止,在cmd环境下执行lsnrctl start命令会报ora-12542错误。

实际上以上监听器异常现象在前几天偶尔出现,后来监听器端口被占用原因,应用系统所对应的数据库用户无法链接数据库。

处理过程:

1、重建监听器没有用,重启服务器后也是没法连接数据库(sys / as sysdba可以连接,并可以正常启动和关闭数据库);

2、因数据库小,因此先备份(expdp)好数据后重新安装Oracle并重建数据库,还是不行。[@more@]

3、以上方法都失败后,我开始搜索网络,如下是从中得到metalink解答内容,解释很好:

Cause

Problem is caused due to the fact that the free ports in the windows client has been exhausted and it is trying to make use of a port which is in TIME_WAIT state which gives the error TNS-12542: Address already in use.

Solution

There are 2 solutions available:

1.) Increase the free port range:

======================

Start Registry Editor (Regedt32.exe).

Locate the following key in the registry:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters

On the Edit menu, click Add Value, and then add the following registry value:

Value Name: MaxUserPort Data Type: REG_DWORD Value: 65534

Valid Range: 5000-65534 (decimal) Default: 0x1388 (5000 decimal)

Description: This parameter controls the maximum port number used when an application requests any available user port from the system. Normally, ephemeral (that is, short-lived) ports are allocated between the values of 1024 and 5000 inclusive.

2.) Decrease the value for TIME_WAIT state:

================================

TcpTimedWaitDelay (new in Windows NT versions 3.51 SP5 and later)

Key: TcpipParameters

Value Type: REG_DWORD - Time in seconds

Valid Range: 30-300 (decimal)

Default: 0xF0 (240 decimal)

Description: This parameter determines the length of time that a connection will stay in the TIME_WAIT state when being closed. While a connection is in the TIME_WAIT state, the socket pair cannot be re- used. This is also known as the "2MSL" state, as by RFC the value should be twice the maximum segment lifetime on the network. See RFC793 for further details.

这主要是由于操作系统的临时端口不够用而引起的。一般系统的临时端口为 1024-5000,这在多用户的环境下,3000多个oracle链接就用光了。由于每个链接断开以后,还要有一个等待时间,例如在 windows 系统中,这个时间是 120秒。

这就导致了一个现象:一会可以联通,一会又出现ora-12542 address in used。如果有临时端口可以使用,可以联通oracle;如果暂时端口没有了,就连不通了。

一下是在windows系统下的解决办法。

1、进入注册表编辑器(regedit),在 HKEY_LOCAL_MACHINEsystemCurrentControlSetServicesTcpipParameters 里,编译-> 添加-> MaxUserPort (类型 REG_DWORD ), 值中填写 65534,(十进制,可以的范围是5000-65534).

2、退出 注册表编辑器,重新启动机器.

解决windows10下无法安装.net framework 3.5(包括.net2.0和3.0) 入域电脑,win10系统中安装 .net framework 3.5(包括.net2.0和3.0) 阅读详情

相关推荐

Java电商秒杀系统性能优化(一)——电商秒杀系统框架回顾

电商秒杀系统框架回顾项目简介外部依赖框架回顾项目要点项目中存在的问题小结 课程是免费的,课程地址如下:SpringBoot搭建电商秒杀项目,课程真的很棒,作者的思路很清晰,建议各位读者可以跟着视频练习一下这个项目; 项目简介 通过SpringBoot快速搭建的前后端分离的电商基础秒杀项目。项目通过应用领域驱动型的分层模型设计方式去完成:用户otp注册、登陆、查看、商品列表、进入商品详情以及倒计时秒...

ghw15221836342的博客 3722

ORA-12541:TNS:无监听程序

1.打开NetConfiguration Assistant 2.选择监听程序配置,下一步 3.选择重新配置,下一步 4.选择监听程序,默认,下一步  注:如果你的监听已启动,则出现提示框,选择是 5.选择协议,使用默认的TCP协议,下一步 6.选择端口号,使用标准端口号1521,下一步 7.不配置另一个监听程序,选择否,下一步 ...

Diamond、的博客 2138

使用TensorFlow Lite Micro流程记录(带源码)

记录如何使用tensorflow lite micro,以及期间解决的问题

ZhaoDongyu_AK47的博客 6216

Java解决Oracle中ORA-12542:TNS无监听程序ORA-12542:TNS:监听程序无法识别连接符中请求的服务

环境:WINDOWS2003+ORACLE 10G 第一次安装完ORACLE后使用SQLPLUS链接都是没问题的,但重启服务器就报了异常:ORA-12541: TNS: 无监听程序。 这里肯定是监听器出了问题,但没有做任何变动,只是重启了服务器,感觉很诡异。 网上查询,说监听配置文件(我的在D:\oracle\下,每个人的不一样,根据自己的情况查找NETWORK\ADMIN\)l

莫盐 1566

原恒星尘埃生长的三维MHD模拟与湍流效应研究

星际尘埃演化是恒星形成过程中的关键环节,其动力学行为直接影响行星系统的构建。通过磁流体力学(MHD)模拟可以揭示尘埃颗粒从微米级到行星胚胎尺度的生长机制,其中湍流效应通过改变碰撞频率和密度结构发挥双重作用。最新研究采用COALA-RAMSES耦合框架,实现了包含自洽尘埃生长的三维非理想MHD模拟,量化了不同物理环境下尘埃尺寸分布的演化规律。这些发现不仅为解释ALMA观测数据提供理论依据,也对行星形成初期条件约束具有重要意义,特别是在湍流参数化与尘埃生长速率关系方面取得突破。

weixin_30988079的博客 384

[Windows] 发票识别工具。支持xml、pdf、ofd文件。

发票识别是财务自动化中的关键环节,支持多种格式(XML、PDF、OFD)的识别工具能显著提升工作效率。以下介绍基于Windows平台开发此类工具的技术方案。发票识别是财务自动化中的关键环节,支持多种格式(XML、PDF、OFD)的识别工具能显著提升工作效率。以下介绍基于Windows平台开发此类工具的技术方案。

pZC_dqux的博客 668

ORA-12541:TNS:无监听程序”错误解决

外地回来,登录pl/sql出现错误:ORA-12541:TNS:无监听程序。 1.       检查oracleproduct10.1.0db_1NETWORKloglistener.log: TNSLSNR for 32-bit Windows: Version 10.1

2191

1. linux系统下在QT中配置OPenCV开发环境

在Linux系统下配置OpenCV的开发环境,需要在官网上下载源码,并使用CMake工具对源码进行编译,与在Windows系统中配置相比复杂许多,本文linux系统为linux minit,opencv是最新版本4.7.0,不过对于linux和opencv的版本要求行不高。此项更改为自己OPenCV想要安装的路径内,默认是安装在**/usr/local。在打开的文件中添加下图中的一行代码,路径是opencv默认的安装路径。按钮,弹出下图界面,默认选择即可,然后点击。

山间点烟雨 2906

pl/sql提示无监听程序,是因为oracle服务没有开启

只需要打开任务管理器(win10系统右击最下方即可),找到服务,开启OracleServiceORCL以及OracleOraDb11g_home1TNSListener服务就可以了

qq_57784948的博客 2249

什么是 SAP Build Process Automation?

SAP Build Process Automation 是一款综合性的低代码工具,允许企业用户快速开发和自动化端到端业务流程。它整合了工作流管理、任务自动化和人工智能技术,提供了一个易于使用的平台,帮助企业更好地应对现代商业挑战。通过该工具,用户无需具备深厚的编程技能即可创建复杂的业务流程。例如,用户可以使用直观的拖放式界面设计流程、设置触发条件、定义任务分配规则,并通过内置的分析功能对流程效率进行评估。流程建模与设计:提供图形化界面,帮助用户直观地设计业务流程。任务自动化。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1260

MTK-Android12开机应用自启需求-自定义原生Launcher3 主界面布局图标

MTK平台 Android12 版本 上实现 开机应用自启需求-自定义原生Launcher3 主界面布局图标。添加一个属性定义即可,如下:这里自定义一个属性目的是为了在加载Launcher3启动时候从属性获取需要自启动应用的包名,可以扩展动态替换 自启动包名。这里有两种方案,要么在Launcher3里面实现,要么在系统服务里面在开机时候启动第三方一次。这里强烈建议在Launcher3中去实现,体验效果更好。// 第一步:定义属性,// 第二步:在onCreate 方法中获取属性并启动应用。

十年饮冰,难凉热血 1380

TNS-12542 Error When Executing Batch Jobs or in High Transaction Environment

TNS-12542 Error When Executing Batch Jobs or in High Transaction Environment[@more@]The information in this docume...

cizhuima2286的博客 241

通过Langchain实现大模型完成测试用例生成的代码(可集成到各种测试平台)

代码中使用的是讯飞spark3.0版本,其中版本在的控制已经封装到了langchain对应的讯飞的iflytek的类中,可以在调用的时候显示控制,默认是spark2.0版本。

Criss@陈磊 2362

ora-12542(Windows2003下 Oracle监听器启动后自动关闭)

今天发现Windows 2003server上的Oracle 监听器无法启动,在Windows服务里启动后立即停止,在cmd环境下执行lsnrctl start命令会报ora-12542错误。实际上以上监听器异常现象在前几天偶尔...

congjiaqing0635的博客 335

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

解决报错:ORA-12541:TNS:无监听程序

找到监听程序配置,右键已管理员身份运行选择第二个:重新配置这个一般没什么好选的默认选定的协议TCP,继续下一步默认的否继续下一步,完成监听重新配置之后进行测试看能否连上。

Hvitur的博客 2万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

TNS-12542: TNS: 地址已被占用

TNS-12542: TNS: 地址已被占用   监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=HKY)(PORT=1521)))   ...

cuichuang1982的博客 2937

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

ORA-12542问题的处理

ORA-12542问题的处理[@more@]ORA-12542: TNS:address already in use Cause: Specified listener address is already being use...

cuidan1640的博客 1040

oracle 12542,TNS-12542: TNS:address already in use

研发说无法访问数据库,数据库正常运行,那就可能是监听有问题,一波简单操作搞定。[oracle@entegor-1 ~]$ lsnrctl startLSNRCTL for Linux: Version 11.2.0.4.0 - Production on 17-AUG-2018 09:04:01Copyright (c) 1991, 2013, Oracle. All rights reserv...

weixin_39645165的博客 799

oracle12542,关于客户端报的ORA-12542

最近用户一个小应用系统总是出故障,windows的系统上跑一个VB写的小客户端程序,出现问题的时候,系统会弹出以下信息:[Microsoft] [ODBC driver for oracle] ORA-12542:TNS:address already in use查询了oracle的错误代码: oerr ora 1254212542,00000,"TNS:address already in u...

weixin_39621075的博客 1146

ORA-12542: TNS:address already in use

用python写了个oracle和dataguard环境日常巡检的程序,跑了有几年了,上周六晚上突然爆出这样的错误。 恰巧当晚有停机维护,以为是网络那边动了东西导致的,后来查了点相关信息。感觉不是网络问题,还是我这边程序出问题。 程序是将根据ip列表依次巡检各个数据库,然后将巡检信息写入到我的一个oracle里面,我以为是由于现在巡检的数据库太多,并发量大,导致这台oracle服务器无法分配更多的tcp端口来处理。折腾了半天,还是没有解决问题。 查了些资料,应该是我程序所在的windows2003服务

killvoon的专栏 1356

监听问题(ORA-12542: TNS: 地址已被占用)错误解决

    本周滨江公司出现小规模的蠕虫病毒爆发,很快就被灭了,没有广泛发作。但是erp服务出现很奇怪的问题,客户端经常出现ora-12542错误,说tns地址被占用,开放了windows所有端口,重启后,发现很快erp服务又很快出现ora-12542错误,session数很快超过300多。很奇怪啊,因为一般来说我们公司的session使用在最多250-280之间,今天是周末,有个150个就不错。有问

吴泉的专栏 6345

避免 TCP/IP 端口耗尽

客户端启动到服务器的 TCP/IP 套接字连接时,客户端通常连接到服务器上的特定端口,并请求服务器通过临时(或暂时)TCP 或 UDP 端口进行响应。在 Windows Server 2003 和 Windows XP 中,客户端应用程序所使用的临时端口的默认范围为 1025 到 5000。在某些情况下,有可能耗尽默认范围的可用端口。TCP/IP 端口耗尽的症状随客户端应用

richnaly的胸怀 6197

oracle12542故障原因,Oracle 11gR2 RAC TNS-12542: TNS:address already in use 故障一例

二.可能原因在MOS的文档中有说明:Listener in INTERMEDIATE status with"Not All Endpoints Registered" [ID 1454439.1]使用crsctl stat res -t,监听状态显示为INTERMEDIATE。ora.LISTENER.lsnrONLINE ONLINE racdb1ONLINE INTERMEDIATE rac...

weixin_39907762的博客 747

Oracle 11gR2 RAC TNS-12542: TNS:address already in use 故障一例

一.问题描述 一朋友在生产库的一个节点上做了一个非常危险的操作,然后该节点的数据库监听出现了异常。 数据库是2个节点的RAC,版本11.2.0.3。 [grid@dave-db1trace]$lsnrctlstatusLISTENERLSNRCTLforLinux:Version11.2.0.3.0-Productionon22-FEB-201318:40:27Copyright(c...

数据库 447

win平台oracle监听启动后停止,监听服务启动不了,启动后立即自动停止

[oracle@node ~]$ lsnrctl startLSNRCTL for Linux: Version 10.2.0.1.0 - Production on 26-MAR-2009 15:13:16Copyright (c) 1991, 2005, Oracle.All rights reserved.Starting /home/oracle/base/ora10g/bin/tns...

weixin_36132709的博客 416

故障处理一例 TNS-12542: TNS:address already in use

故障: TNS-12542: TNS:address already in use TNS-12560: TNS:protocol adapter error TNS-00512: Address already in use Linux Error: 98: Address already in use 解决: 查询已经存在的 LISTENER进程 $ ps -ef | grep...

weixin_34194702的博客 623
上一篇: vb6链接oracle常用数据库操作类模块(原创_源码_说明),vb连接oracle db方法
下一篇: oracle session status killed,关于Oracle 顽固的KILLED 状态的SESSION的处理
羊鱼鸡
博客等级 码龄8年 44粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值