在 Debian 上,lsnrctl 是 Oracle 数据库监听程序(Listener) 的管理工具,通常不是通过 systemd 直接叫 lsnrctl 服务,而是用 lsnrctl 命令本身来重启。
su - oracle
lsnrctl stop
lsnrctl start
或者一条命令:
lsnrctl reload
reload不会中断已有连接,适合生产环境
lsnrctl status
有些 Debian 环境会配置 Oracle 的 systemd 服务,例如:
systemctl restart oracle-listener
(服务名可能不同,可用下面命令查看)
systemctl list-unit-files | grep -i oracle
command not foundexport ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
oracle 用户,不能用 root如果你能告诉我 Oracle 版本 和 监听名(默认 LISTENER),我可以给你更精确的命令。