【发布时间】:2017-07-28 20:42:14
【问题描述】:
我有一个困扰了我大约一年的问题。我的机器上安装了 Oracle 12.1.x.x。一两天后,侦听器停止响应,并且 listener.log 包含一堆 TNS-12531 消息。如果我重新启动,问题就会消失,我可以再过一两天。我很懒,我讨厌重新启动,所以我决定最终找到这个,但我没有运气。因为另一种选择是做我真的不想做的工作,所以我将把所有的时间都花在研究这个上。
一些注意事项:
- Windows 10 专业版
- 64 位
- 32 GB 内存
- 一般情况下,发生错误时大约有 20GB 可用空间
- 我有几个数据库,运行哪个数据库并不重要
- 重启数据库没有帮助
- 重新启动监听器没有帮助
- 只有重新启动才能解决问题
- 当我设置
TRACE_LEVEL_LISTENER = 16时,我没有得到更多信息。不写入跟踪文件 - 如果我绕过监听器,我可以连接到数据库(即设置
ORACLE_SID=xxx并在没有数据库标识符的情况下连接) - 侦听器停止后,所有其他网络交互似乎都可以正常工作
- lsnrctl 状态挂起并在 listener.log 中添加另一个
TNS-12531 - 我家的配置大致相同,但没有发生这种情况
以下是listener.log 文件的示例:
Fri Jul 28 14:21:47 2017
System parameter file is D:\app\user\product\12.1.0\dbhome_1\network\admin\listener.ora
Log messages written to D:\app\user\diag\tnslsnr\LJ-Quad\listener\alert\log.xml
Trace information written to D:\app\user\diag\tnslsnr\LJ-Quad\listener\trace\ora_24288_14976.trc
Trace level is currently 16
Started with pid=24288
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=LJ-Quad)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
Listener completed notification to CRS on start
TIMESTAMP * CONNECT DATA [* PROTOCOL INFO] * EVENT [* SID] * RETURN CODE
28-JUL-2017 14:22:06 * 12531
TNS-12531: TNS:cannot allocate memory
28-JUL-2017 14:22:47 * 12531
TNS-12531: TNS:cannot allocate memory
28-JUL-2017 14:26:24 * 12531
TNS-12531: TNS:cannot allocate memory
非常感谢您提供的任何帮助!
【问题讨论】:
标签: oracle database-administration