在 Debian 下,lsnrctl 本身是 Oracle Listener 的控制工具,它不直接“查日志”,但可以通过它定位日志位置,再用普通方式查看日志。
下面按常见场景说明。
lsnrctl status
lsnrctl status LISTENER
或:
lsnrctl show
通常会看到类似:
Listener Log File /u01/app/oracle/diag/tnslsnr/hostname/listener/alert/log.xml
或者老版本:
/u01/app/oracle/product/11.2.0/dbhome_1/network/log/listener.log
$ORACLE_BASE/diag/tnslsnr/<hostname>/<listener>/alert/log.xml
示例:
/u01/app/oracle/diag/tnslsnr/dbserver/listener/alert/log.xml
查看:
less /u01/app/oracle/diag/tnslsnr/dbserver/listener/alert/log.xml
$ORACLE_HOME/network/log/listener.log
查看:
tail -f $ORACLE_HOME/network/log/listener.log
tail -f listener.log
tail -n 100 listener.log
grep ORA- listener.log
lsnrctl
LSNRCTL> set displaymode verbose
LSNRCTL> status
但这只是状态信息,不是完整日志。
如果 listener 启动失败,也可看系统日志:
journalctl -xe
或:
cat /var/log/syslog | grep oracle
lsnrctl 用来定位日志路径,真正查日志还是用
cat / tail / less看 listener.log 或 log.xml
如果你愿意,可以告诉我:
我可以帮你精确指出该看哪个文件。