Oracle监听器故障排查及修复(oracle监听问题)

Oracle监听器是Oracle数据库的重要组成部分,它允许来自网络上的客户端连接到Oracle数据库服务器上,并且连接是透明地进行的,通常情况下,在监听器出现问题时,必须进行故障排查和修复,以维持Oracle数据库的稳定运行。

在故障排查和修复Oracle监听器的第一步是确定如何定位Oracle监听器的问题。打开Command语句窗口,在“[oracle@localhost]$”后输入“lsnrctl status”,可以看到Oracle监听器状态信息:

[oracle@localhost]$ lsnrctl status

LSNRCTL for Linux: Version 18.0.0.0.0 – Production on 22-JUL-2020 08:33:17

Copyright (c) 1991, 2018, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))

STATUS of the LISTENER

————————

Alias LISTENER

Version TNSLSNR for Linux: Version 18.0.0.0.0 – Production

Start Date 22-JUL-2020 08:13:13

Uptime 0 days 0 hr. 19 min. 4 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File /opt/oracle/product/18c/dbhome_1/network/admin/listener.ora

Listener Log File /opt/oracle/diag/tnslsnr/localhost/listener/alert/log.xml

Listening Endpoints Summary…

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))

Services Summary…

Service “CLRExtProc” has 1 instance(s).

Instance “CLRExtProc”, status UNKNOWN, has 1 handler(s) for this service…

Service “orcl” has 1 instance(s).

Instance “orcl”, status READY, has 1 handler(s) for this service…

The command completed successfully

如果有任何故障,这段信息将显示出来,如果监听器处于DOWN状态,则返回提示信息“TNS-12541, TNS:listener process down”。在查看完监听器的状态和错误信息后,可以基于原因进一步调查。

通常,TNS-12541:TNS:listener process down错误的原因有:Oracle监听器的监听程序未启动或正在运行;防火墙设置不正确;数据库实例上的监听器没有正确地配置;异常条件(如内存泄露,数据库崩溃);操作系统上可能出现的权限问题。

修复 Oracle 监听器前,我们可以通过以下代码来重启Oracle监听器:

[oracle@localhost]$ lsnrctl start

LSNRCTL for Linux: Version 18.0.0.0.0 – Production on 22-JUL-2020 08:38:13

Copyright (c) 1991, 2018, Oracle. All rights reserved.

Starting /opt/oracle/product/18c/dbhome_1/bin/tnslsnr: please wait…

TNSLSNR for Linux: Version 18.0.0.0.0 – Production

System parameter file is /opt/oracle/product/18c/dbhome_1/network/admin/listener.ora

Log messages written to /opt/oracle/diag/tnslsnr/localhost/listener/alert/log.xml

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.001)(PORT=1521)))

STATUS of the LISTENER

————————

Alias LISTENER

Version TNSLSNR for Linux: Version 18.0.0.0.0 – Production

Start Date 22-JUL-2020 08:38:13

Uptime 0 days 0 hr. 0 min. 0 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File /opt/oracle/product/18c/dbhome_1/network/admin/listener.ora

Listener Log File /opt/oracle/diag/tnslsnr/localhost/listener/alert/log.xml

Listening Endpoints Summary…

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))

Services Summary…

Service “CLRExtProc” has 1 instance(s).

Instance “CLRExtProc”, status UNKNOWN, has 1 handler(s) for this service…

Service “orcl” has 1 instance(s).

Instance “orcl”, status READY, has 1 handler(s) for this service…

The command completed successfully

上面的代码行表明Oracle监听器已经启动并且没有错误,监听器问题也得到了解决。但是,尽管问题已经得到解决,但在进一步改善Oracle监听器性能之前,必须进行性能测试,以确保Oracle数据库系统能够满足数据库服务器对数据速率的要求。

总结:Oracle监听器故障排查和修复是Oracle数据库系统成功运行的关键,在故障排查及修复Oracle监听


数据运维技术 » Oracle监听器故障排查及修复(oracle监听问题)