在 Ubuntu 上,lsnrctl 是 Oracle Database Listener(监听器) 的管理工具,而不是 Ubuntu 自带命令。如果你看到 lsnrctl: command not found,通常是因为:
下面按步骤说明如何在 Ubuntu 上启动 lsnrctl。
lsnrctl 一般位于:
$ORACLE_HOME/bin/lsnrctl
常见路径示例:
/u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl
通常 Oracle 安装在 oracle 用户下:
sudo su - oracle
执行(或写入 .bashrc):
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl
⚠️ 路径和 SID 要按你的实际安装修改
lsnrctl start
成功后会看到类似:
The command completed successfully
lsnrctl status # 查看监听状态
lsnrctl stop # 停止监听
lsnrctl reload # 重新加载配置
说明:
检查:
$ORACLE_HOME/network/admin/listener.ora
Ubuntu 不是 Oracle 官方主力支持系统,常用的是:
在 Ubuntu 上安装 Oracle 较复杂,建议用 Docker:
docker run -d -p 1521:1521 gvenzl/oracle-xe
如果你愿意,可以告诉我:
我可以帮你精准排查。