Oracle数据库连接超时解决方案

PL/Sql 连接数据库 超时问题解决--转(2012-08-01 10:14:27)转载▼标签: oraclepl/sql 分类: 数据库SQL 
前提配置:本机是ORACLE服务端 用PLSQL连接远程的服务端

大致有以下解决方案:

第一个方案:

按照配置流程:

第一:保证数据库安装没有出问题,本页有数据库安装的具体介绍。

第二:找到D:\app\Administrator\product\11.1.0\db_2\NETWORK\ADMIN下面的listener.ora 其中的HOST为本机的ip也可以填写计算机名称;此处为计算机名称。

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-3IDOESF6ATU)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )


第三:找到D:\app\Administrator\product\11.1.0\db_2\NETWORK\ADMIN下面的tnsnames.ora

ORCL =
  (DESCRIPTION =                                    
    (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-3IDOESF6ATU)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
我出现的ORA-12170: TNS: 连接超时问题,解决方案,改上面的host名为主机名WIN-3IDOESF6ATU或127.0.0.1
HOST为本机的ip也可以填写计算机名称;此处为计算机名称。还有一点就是计算机名称有时候最好不要改,很容易出问题。

autotestingv2_129 =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.6.50.129)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
)

连接远程的服务器IP为10.6.50.129的数据库服务器。 注意 autotestingv2_129前面不要有空格。

第二种方案:

PLSQL登陆时报异常:ORA-12170: TNS: 连接超时

下面是调试测试的各个步骤:

在CMD窗口可以正常连接数据库
CMD输入:lsnrctl status 结果:命令执行成功
CMD输入:tnsping ora11g 结果:TNS-12535: TNS: 操作超时
CMD输入:ping Michael-PC 结果:发现IP是当前网络的地址并不是127.0.0.1或者localhost
其中Michael-PC 为计算机名称。

基于上面的调试分析如下:连网的情况下系统未能把Michael-PC解析为localhost
解决方法如下:
C:\Windows\System32\drivers\etc 找到系统的hosts文件,修改如下:
# localhost name resolution is handled within DNS itself.
# 127.0.0.1       localhost
# ::1             localhost
添加一条记录
# localhost name resolution is handled within DNS itself.
# 127.0.0.1       localhost
# ::1             localhost
127.0.0.1       Michael-PC
这样可以在连网的情况下也能正常连接数据库了。

第三种方案:

注意问题:

1 、安装的时候注意先不要装超级兔子,很容易跟ORACLE起冲突。

2、计算机名称最好不要改。

3.、如果是ORACLE重装的话 一定要把以前的删除干净,ORACLE删除本页有详细说明。

 

 

 

附:其他

一、TNListener没有开启


1.cmd---services.msc----以Oracle开头TNListener结尾的服务启动它
2.如果还没有启动,修改注册表cmd--regedit
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleTnsListener
添加一个字符串imagepath值为TNSLSNR.exe的路径
我的是D:\Oracle\Administrator\product\11.1.0\db_1\BIN\TNSLSNR
终于可以连接上了,高兴!


如果在本机可以正常使用,可是到局域网中的其他机器就出现“ORA-12170:TNS:连接超时
解决方法:

1.cmd-----ping ip地址 查看网络问题,看能否ping通

2.cmd-----tnsping   ip地址(或者是服务器的实例名SID)如果报“TNS-12535:操作超时”,可能是服务器端防火墙    没有关闭

3.cmd----netstat -na 查看1521端口是否关闭,如果关闭Windows XP中的防火墙设置中将1521端口设为例外

4.cmd----lsnrctl status   lsnrctl是listener-control 监听器的缩写,查看监听的状态

 

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
骏CMS系统主要是网站内容管理的一个软件解决方案,该系统集成了文章、软件、视频、图片模型。 微骏CMS 1.0 正式版 主要改动: 1.优化上传功能 2.修复发现的bug 3.新增图片模型 4.添加网盘功能 5.优化后台的页面操作 系统主要特色功能: 1.系统支持6种主流数据库:MSSQL 2005、mysql 5.x、Oracle、Sybase、DB2、PostgreSQL(其它数据库以后版本推出)。 2.系统支持6种语言:简体中文、繁体中文、英文、日文、西班牙文、俄文。 3.系统自带模块:文章、软件、视频。 4.系统特色:移植无压力、后台全Ajax操作。 5.全静态化功能 6.动态后缀任意改 7.支持Mysql数据库备份 8.在线编辑文件和文件的管理 9.后台数据库国际化(不管有多少新增的后台菜单及其它字段都可以轻松实现) 10.支持第三方登录(系统采用Oauth2.0协议) 11.模板模型任意换(这里可以满足定制开发的需求,让你不在受限于我们定制的标签) 12.系统采用UUID算法来添加文章等数据量大的表(让你移植任意不同数据库没压力) 13.支付宝在线支付功能(需要在后台修改配置参数才能正常使用) 14.加密采用盐值加密策略(不可逆转的生成算法,告别密码门) 15.后台全Ajax让你登录超时不丢失已经写好的内容(F5刷新整个页面情况不算) 16.集成阿里云OSS网盘功能。 后台管理地址:http://www.xxx.com/admin/login.show(这里的xxx指的是你的域名网址,本站是以.show为动态后缀,以在里你安装系统设置动态后缀为准) 微骏CMS后台菜单功能列表: 一.内容模型 1.内容管理 文章列表 软件列表 专题列表 视频列表 CMS类型列表 图片列表 2.内容功能 标签管理 评论管理 生成静态文件 索引管理 栏目管理 关键字历史列表 二、用户模型 1.前台用户 会员列表 会员组 支付订单列表 2.后台用户 管理员列表 角色列表 权限管理 登录日志 在线管理员 三、系统模型 1.系统设置 站点设置 安全设置 导航设置 水印设置 邮件设置 模板设置 模板标签设置 系统变量设置 会员登录设置 Oauth登录设置 2.系统功能 备份数据 国际化管理 文件管理 发送邮件 友情链接 下载网站过滤 频道模型管理 投票管理
Hmily是柔性分布式事务解决方案,提供了TCC 与 TAC 模式。它以零侵入以及快速集成方式能够方便的被业务进行整合。在性能上,日志存储异步(可选)以及使用异步执行的方式,不损耗业务方法方法。之前是由我个人开发,目前由我在京东数科已经重新启动,未来将会是金融场景的分布式事务解决方案。 功能: 高可靠性:支持分布式场景下,事务异常回滚,超时异常恢复,防止事务悬挂 易用性:提供零侵入性式的 Spring-Boot,Spring-Namespace 快速与业务系统集成 高性能:去中心化设计,与业务系统完全融合,天然支持集群部署 可观测性:Metrics多项指标性能监控,以及admin管理后台UI展示 多种RPC:支持 Dubbo,SpringCloud,Motan,Sofa-rpc,brpc,tars 等知名RPC框架 日志存储:支持 mysql,oracle,mongodb,redis,zookeeper 等方式 复杂场景:支持RPC嵌套调用事务 必要前提: 必须使用 JDK8+ TCC模式必须要使用一款 RPC 框架,比如:Dubbo,SpringCloud,Montan TCC模式 当使用TCC模式的时候,用户根据自身业务需求提供 try,confirm,cancel 等三个方法, 并且 confirm,cancel 方法由自身完成实现,框架只是负责来调用,来达到事务的一致性。 TAC模式 当用户使用TAC模式的时候,用户必须使用关系型数据库来进行业务操作,框架会自动生成回滚SQL,当业务异常的时候,会执行回滚SQL来达到事务的一致性。
1.Loadrunner报错日志: Action.c(13):错误-27727: Step download timeout (120 seconds) has expired when downloading resource(s). Set the "Step Timeout caused by resources is a warning" Run-Time Setting to Yes/No to have this message as a warning/error, respectively 解决方案: 修改“运行时设置-HTTP请求连接超时、HTTP请求接收超时”的值为600s或者更长时间 Run-Time Setting(运行时设置) -- Internet Protocol -- Preferences -- Option -- Step download timeout(sec)改为15000(根据需要可能更大) 2.Loadrunner报错日志: Action.c(39):错误-27796:连接服务器“test0105.s1.diy.com:80”失败: [10061] Connection refused 有可能是服务器有太多的数据库连接,提示连接被拒绝 解决方案: 可以让开发尝试调整: 1).数据库最大连接数; 2). tomcat的最大并发数限制 3.Loadrunner报错日志: Action.c(9):错误-27791:服务器“test0105*.s1.diy.com”已过早关闭连接 访问时已经下载不到资源了,有可能是已经达到服务器资源的瓶颈了,可以查看服务器资源如CPU、负载等 4.Loadrunner报错日志: Action.c(7): Error -27791: Server "10.10.0.88" has shut down the connection prematurely 借鉴51Testing网友提供的解决方案: 1)、应用服务器死掉。小用户时程序上的问题,程序上处理数据库的问题 2)、应用服务没有死。应用服务参数设置问题。例如:在许多客户端weblogic应用服务器被拒绝,而在服务器端没有错误显示,则有可能是weblogic中的server元素的acceptbacklog属性值设得过低。如果连接时收到connection refused消息,说明应提高该值,每次增加25%。 3)、数据库的连接 在应用服务的性能参数可能太小了 数据库启动的最大连接数(跟硬件的内存有关) 4)、有时关闭防火墙如卡巴斯基也会解决如上问题 5,Loadrunner报错日志: Action.c(43) Error -26612 HTTP Status-Code=500 (Internal Server Error) for "http//192.168.1.2227001/ulms/login.do" 500 Internal Server Error IIS的HTTP 500内部服务器错误是经常碰到的错误之一,它的主要错误表现就是ASP程序不能浏览.但HTM静态网页不受影响。另外当错误发生时,系统事件日志和安全事件日志都会有相应的记录。 IE中的表现,当浏览以前能够正常运行的asp页面时会出现如下的错误:网页无法显示 LoadRunner出现error问题及解决方法总结 一、Step download timeout (120 seconds) 这是一个经常会遇到的问题,解决得办法走以下步骤: 1、修改run time setting中的请求超时时间,增加到600s,其中有三项的参数可以一次都修改了,HTTP-request connect timeout,HTTP-request receieve timeout,Step download timeout,分别建议修改为600、600、5000。run time setting设置完了后记住还需要在control组件的option的run time setting中设置相应的参数。 2、办法一不能解决的情况下,解决办法如下: 设置runt time setting中的internet protocol-preferences中的advaced区域有一个winlnet replay instead of sockets选项,选项后再回放就成功了。切记此法只对windows系统起作用,此法来自zee的资料。 二、问题描述Connection reset by peer. 这个问题不多遇见,一般是由于下载的速度慢,导致超时,所以,需要调整一下超时时间。 解决办法:Run-time setting窗口中的‘Internet Protocol’-‘Preferences’设置set advanced options(设置高级选项),重新设置一下“HTTP-request connect timeout(sec),可以稍微设大一些”。 三、问题描述connection refused 这个的错误的原因比较复杂,也可能很简单也可能需要查看好几个地方,解决起来不同的操作系统方式也不同。 1、首先检查是不是连接weblogic服务过大部分被拒绝,需要监控weblogic的连接等待情况,此时需要增加acceptBacklog,每次增加25%来提高看是否解决,同时还需要增加连接池和调整执行线程数,(连接池数*Statement Cache Size)的值应该小于等于oracle数据库连接数最大值。 2、如果方法一操作后没有变化,此时需要去查看服务器操作系统中是否对连接数做了限制,AIX下可以直接vi文件limits修改其中的连接限制数、端口数,还有tcp连接等待时间间隔大小,wiodows类似,只不过windows修改注册表,具体修改注册表中有TcpTimedWaitDelay和MaxUserPort项,键值在[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\]。因为负载生成器的性能太好,发数据包特别快,服务器也响应特别快,从而导致负载生成器的机器的端口在没有timeout之前就全部占满了。在全部占满后,就会出现上面的错误。执行netstat –na命令,可以看到打开了很多端口。所以就调整TCP的time out。即在最后一个端口还没有用到时,前面已经有端口在释放了。 1,这里的TcpTimedWaitDelay默认值应该中是30s,所以这里,把这个值调小为5s(按需要调整)。 2,也可以把MaxUserPort调大(如果这个值不是最大值的话)。 四、问题描述open many files 问题一般都在压力较大的时候出现,由于服务器或者应用中间件本身对于打开的文件数有最大值限制造成,解决办法: 1、修改操作系统的文件数限制,aix下面修改limits下的nofiles限制条件,增大或者设置为没有限制,尽量对涉及到的服务器都作修改。 2、方法一解决不了情况下再去查看应用服务器weblogic的commonEnv.sh文件,修改其中的nofiles文件max-nofiles数增大,应该就可以通过了,具体就是查找到nofiles方法,修改其中else条件的执行体,把文件打开数调大。修改前记住备份此文件,防止修改出错。 3、linux上可以通过ulimit –HSn 4096来修改文件打开数限制,也可以通过ulimit -a 来查看。 4、linux上可以通过lsof -p pid | wc -l 来查看进程打开的句柄数。 五、问题描述has shut down the connection prematurely 一般是在访问应用服务器时出现,大用户量和小用户量均会出现。 来自网上的解释: 1>应用访问死掉 小用户时:程序上的问题。程序上存在数据库的问题 2>应用服务没有死 应用服务参数设置问题 例如: 在许多客户端连接Weblogic应用服务器被拒绝,而在服务器端没有错误显示,则有可能是Weblogic中的server元素的AcceptBacklog属性值设得过低。如果连接时收到connection refused消息,说明应提高该值,每次增加25% Java连接池的大小设置,或JVM的设置等 3>数据库的连接 在应用服务的性能参数可能太小了 数据库启动的最大连接数(跟硬件的内存有关) 以上信息有一定的参考价值,实际情况可以参考此类调试。 如果是以上所说的小用户时:程序上的问题。程序上存在数据库的问题,那就必须采用更加专业的工具来抓取出现问题的程序,主要是程序中执行效率很低的sql语句,weblogic可以采用introscope定位,期间可以注意观察一下jvm的垃圾回收情况看是否正常,我在实践中并发500用户和600用户时曾出现过jvm锯齿型的变化,上升下降都很快,这应该是不太正常的。 --------------------------------------- 实际测试中,可以用telent 站点看看是否可以连接进去,可以通过修改连接池中的连接数和适当增加应用内存值,问题可以解决。 六、问题描述Failed to connect to server 这个问题一般是客户端链接到服务失败,原因有两个客户端连接限制(也就是压力负载机器),一个网络延迟严重,解决办法: 1、修改负载机器注册表中的TcpTimedWaitDelay减小延时和MaxUserPort增加端口数。注:这将增加机器的负荷。 2、检查网络延迟情况,看问题出在什么环节。 建议为了减少这种情况,办法一最好测试前就完成了,保证干净的网络环境,每个负载机器的压力测试用户数不易过大,尽量平均每台负载器的用户数,这样以上问题出现的概率就很小了。 七、问题描述Overlapped transmission of request to ... WSA_IO_PENDING 这个问题,解决方法: 1、方法一,在脚本前加入web_set_sockets_option("OVERLAPPED_SEND", "0"),禁用TTFB细分,问题即可解决,但是TTFB细分图将不能再使用,附图。 2、方法二,可以通过增加连接池和应用系统的内存,每次增加25%。 八、问题描述Deleted the current transaction ... since response time is not accurate 这个问题不多遇见,一般出现在压力机器上发生ping值为负数(AMD双核CPU),可以重新启动pc机或者打补丁,附图。 九、问题描述HTTP Status-Code=500 (Internal Server Error) for 1、应用服务当掉,重新启动应用服务。 2、当应用系统处于的可用内存处于阀值以下时,出现HTTP Status-Code=500的概率非常高,此时只要增加应用系统的内存,问题即可解决。 十、问题描述Failed to transmit data to network: [10057]Socket is not connected 这个错误是由网络原因造成的,PC1和PC2上面都装了相同的loadrunner 9.0,且以相同数量的虚拟用户数运行相同的业务(机器上的其他条件都相同),PC1上面有少部分用户报错,PC2上的用户全部执行通过。 十一、问题描述 Error -27257: Pending web_reg_save_param/reg_find/create_html_param[_ex] request(s) detected and reset at the end of iteration number 1 解决方法:web_reg_save_param位置放错了,应该放到请求页面前面。 十二、问题描述 通过Controler调用远程代理时报错,Error: CCI security error:You are running under secure mode and the function system is not allowed in this mode. 解决方法:在代理开启的时候,去掉勾选防火墙选项。
Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet.Applet 简单实现!~ 网页表格组件 GWT Advanced Table GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以直接在你的网页里面显示搜查的结果。 github-java-api github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. 支持混合使用redis缓存和memcached缓存。可以将列表数据缓存到redis中,其他kv结构数据继续缓存到memcached 6. 支持redis的主从集群,可以做读写分离。缓存读取自redis的slave节点,写入到redis的master节点。 Java对象的SQL接口 JoSQL JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java对象集进行查询,排序,分组。 搜索自动提示 Autotips AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列的数字图像。使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端 JOpenID JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor 的文件持久化组件,以及一个高吞吐量的可靠事务日志组件。 Google地图JSP标签库 利用Google:maps JSP标签库就能够在你的Web站点上实现GoogleMaps的所有功能而且不需要javascript或AJAX编程。它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JSEditor JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值