温馨提示×

Ubuntu lsnrctl命令日志在哪查看

小樊
40
2025-11-23 11:30:51
栏目: 智能运维

ubuntu 中 lsnrctl 日志位置与查看方法

一、常见日志路径

  • 经典路径(旧版本或传统配置):$oracle_home/network/log/listener.log。这是最常见的监听器日志位置,直接查看该文件即可。若设置了 oracle_home,可用命令快速定位:echo $oracle_home 并拼接 /network/log/listener.log

  • 诊断目录路径(11g 及以上使用 adr,更常见):$diag/tnslsnr//listener/alert/<listener_name>.log。可通过 lsnrctl status 输出的 “log files:” 字段确认实际路径;若未设置 diag 环境变量,可用 echo $diag 查看,或到 /u01/app/oracle/diag/tnslsnr/ 下按主机名与监听器名查找。

二、快速定位与查看

  • 确认 oracle 环境变量(建议以 oracle 用户执行):echo $oracle_homeecho $diag。这有助于判断使用哪类路径。

  • 查看监听状态并定位日志文件:lsnrctl status。在输出的 “log files:” 行可直接看到完整日志路径,复制后用 lesstail 查看。

  • 实时查看日志:tail -f /path/to/listener.log(或 adr 路径下的 alert 日志)。如需过滤关键字,可配合 grep 使用。

  • 权限提示:若提示无权限,切换到 oracle 用户或使用 sudo 提升权限后再查看。

三、实用示例

  • 示例 1(经典路径):tail -f $oracle_home/network/log/listener.log

  • 示例 2(adr 路径):tail -f $diag/tnslsnr/$(hostname)/listener/alert/listener.log

  • 示例 3(从状态输出复制路径):lsnrctl status → 复制 “log files:” 后的路径 → less <copied_path>

0