• tnslsnr.exe进程占用大量内存的解决.


    ----------------------------------------------------------------

    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi

    PL/SQL Release 10.2.0.4.0 - Production

    CORE    10.2.0.4.0      Production

    TNS for 64-bit Windows: Version 10.2.0.4.0 - Production

    NLSRTL Version 10.2.0.4.0 - Production


    由于我们这边的应用是频繁的断开式连接,所以tnslsnr.exe会逐渐增大,直接吃满内存1.7G,

    可以在

    ORACLE_HOME/network/admin/listener.ora下面加入一行即可关掉log的记录,反正我也不查tns的log,留他何用?

    logging_listener=off

    需要重启

    或是在lsnrctl里设置set log_status off,在10g里这个会即时生效

    LSNRCTL> show log_status

    正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))

    LISTENER 参数 "log_status" 设为 ON

    命令执行成功

    LSNRCTL> set log_status off

    正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))

    LISTENER 参数 "log_status" 设为 OFF

    命令执行成功

    LSNRCTL> save_config
    正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
    保存的LISTENER配置参数。

    但是tnslsnr.exe还是霸占着这么多的内存,需要lsnrctl里stop+start来释放

    至此,问题解决...


    清空tnslsnr.exe的log文件内容,

    在linux下:

    >| listener.log


    windows 下:

    建立一个空文件fu

    然后

    type fu > listener.log


    新建fu_tns_log.log文件做为新的监听日志文件,这个方法不用关闭监听

    LSNRCTL> set log_file

    Parameter Value: fu_tns_log.log

    正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))

    LISTENER 参数 'log_file' 设为 fu_tns_log.log

    命令执行成功


    作者:Daaprk
    可以转载,但必须以超链接形式标明文章原始出处和作者信息.
  • 相关阅读:
    Android事件机制之一:事件传递和消费
    数据类型和JSON格式
    json 数据交换格式与java
    写给iOS程序员的命令行使用秘籍
    pthread_create线程创建的过程剖析
    同步变量及知识要素
    mysql 批量更新与批量更新多条记录的不同值实现方法
    gettype
    寻求全站搜索功能开发思路
    DEDE中 field:rel 是什么意思,起一个什么样的作用效果
  • 原文地址:https://www.cnblogs.com/dap570/p/1707375.html
Copyright © 2020-2023  润新知