温馨提示×

怎样查看ubuntu lsnrctl状态

小樊
39
2026-10-17 01:12:04
栏目: 智能运维

在 Ubuntu 上,lsnrctl 是 Oracle Database Listener(监听器) 的管理工具,通常用于 Oracle 数据库环境。查看 lsnrctl 状态的方法如下:


一、前提条件

  1. 已安装 Oracle 数据库软件(如 Oracle 11g / 12c / 19c)
  2. 已配置 ORACLE 环境变量
  3. 使用 oracle 用户(或具有相应权限的用户)操作

二、基本查看监听状态命令

1️⃣ 切换到 oracle 用户

su - oracle

2️⃣ 设置环境变量(如未自动加载)

export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH

(路径根据你实际安装目录调整)

3️⃣ 查看监听状态

lsnrctl status

成功示例输出:

LSNRCTL for Linux: Version 19.0.0.0.0
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux
Start Date                01-JAN-2026
Uptime                    10 days
...

三、查看指定监听器状态

如果配置了多个监听器:

lsnrctl status LISTENER_NAME

四、常见问题排查

❌ command not found: lsnrctl

说明:

  • 未安装 Oracle
  • 环境变量未设置
  • 当前用户不是 oracle

解决:

which lsnrctl
echo $ORACLE_HOME

❌ TNS-12541: TNS:no listener

说明监听器未启动:

lsnrctl start

五、非 Oracle 场景说明

如果你没有安装 Oracle,Ubuntu 本身 没有 lsnrctl 命令。
你可能是想查看:

  • 端口监听状态(用 netstat / ss)
ss -tulnp | grep 1521
  • 服务状态(如 MySQL / PostgreSQL)

如果你愿意,可以告诉我:

  • 是否安装了 Oracle
  • Oracle 版本
  • 想确认监听端口还是数据库连通性

我可以给你更精确的命令。

0 踩