• 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
    可以转载,但必须以超链接形式标明文章原始出处和作者信息.
  • 相关阅读:
    数据库设计
    企业Logo的发展趋势
    把握面试关键点才是上策
    关注程序员健康之——保护你的腰椎
    常见病的中医药诊治胃痛,呕吐,腹痛,泄泻,分型论治
    孕妈咪 只要恭喜 不要害喜
    职业程序员培养之道
    呕吐、哕、下利病
    脾胃系病证便秘,痢疾,泄泻,腹痛,呃逆。。。。。。。。
    Oracle数据库DBA原文经典书籍
  • 原文地址:https://www.cnblogs.com/dap570/p/1707375.html
Copyright © 2020-2023  润新知