在 Debian 上,lsnrctl 是 Oracle 数据库监听(Listener) 的管理工具。要重启监听,通常按下面步骤来即可。
lsnrctl 一般位于 Oracle 安装目录,例如:
$ORACLE_HOME/bin/lsnrctl
执行前建议先加载 Oracle 环境变量:
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl
(具体路径以你的实际安装为准)
lsnrctl stop
lsnrctl start
如果只是修改了 listener.ora,可以不断连接重启:
lsnrctl reload
⚠️
reload不会中断已有连接,但不会重启整个监听进程
lsnrctl status
如果监听名称不是默认的 LISTENER,需要指定:
lsnrctl status LISTENER_NAME
command not found说明 lsnrctl 不在 PATH 中,使用完整路径:
/u01/app/oracle/product/19.3.0/dbhome_1/bin/lsnrctl stop
请使用 oracle 用户 执行:
su - oracle
可检查:
lsnrctl status
cat $ORACLE_HOME/network/log/listener.log
常见问题:
listener.ora 配置错误/etc/hosts)| 需求 | 命令 |
|---|---|
| 重启监听 | lsnrctl stop && lsnrctl start |
| 平滑重启 | lsnrctl reload |
| 查看状态 | lsnrctl status |
如果你愿意,可以把 报错信息或 listener.log 贴出来,我可以帮你具体分析。