Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1434850
  • 博文数量: 316
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 3503
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(316)

文章存档

2021年(48)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

分类: Oracle

2021-02-19 21:14:31


平时正常使用的软件plsql ,突然无法连接数据库,提示TNS-12560错误。

验证一下,tnsping 127.0.0.1 也报这个错误。

开启搜索模式,关键字 windows tns-12560

百度搜了搜没有发现好文章。
MOS搜了搜,找到几篇,但不确定。

看看这个错误的解释:

[oracle@db1 ~]$ oerr tns 12560
12560, 00000, "TNS:protocol adapter error"
// *Cause: A generic protocol adapter error occurred.
// *Action: Check addresses used for proper protocol specification. Before
// reporting this error, look at the error stack and check for lower level
// transport errors. For further details, turn on tracing and reexecute the
// operation. Turn off tracing when the operation is complete.

需要开启跟踪,查看错误堆栈。
出问题的机器上安装了oracle客户端软件,于是打开netmgr,开启客户端和服务器端(好像这个不用)的support跟踪。

再执行 sqlplus a/a@orcl 进行连接测试,然后去ADR目录下$ORACLE_HOME/log/... trace/ 下看到有trc文件产生了。


很好,符合MOS上一篇文档的说明。

关键点是:缓冲区不足,socket操作不能执行。
但此案例不是病毒导致的,而且也不是间歇性连不上。

重启 windows 后问题临时解决。

还可以设置注册表
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters
增加 MaxUserPort,类型是 DWORD,值是 65534

netstat -nao | find /i "estab" /c 没有超过5000。
netstat -ab >d:\s.txt 可以看到都有哪些连接。

参考:
Windows: Intermittent TNS-12560 Error Connecting From Remote Client (Doc ID 793526.1) 
https://docs.microsoft.com/en-us/troubleshoot/windows-client/networking/connect-tcp-greater-than-5000-error-wsaenobufs-10055#resolution
阅读(67) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~