在 Ubuntu 上,lsnrctl 是 Oracle Database(通常是 Oracle 数据库软件的一部分,不是系统自带命令)提供的工具,用于管理 Oracle Listener。
lsnrctl 的配置不是通过命令参数,而是通过 监听器配置文件:
$ORACLE_HOME/network/admin/listener.ora
如果你的 Oracle 安装在常见位置:
/u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
查看方式:
echo $ORACLE_HOME
ls $ORACLE_HOME/network/admin/listener.ora
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
然后才能使用:
lsnrctl status
lsnrctl start
lsnrctl stop
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = ORCL)
(ORACLE_HOME = /u01/app/oracle/product/19.3.0/dbhome_1)
)
)
lsnrctl reload
# 或
lsnrctl stop
lsnrctl start
说明 Ubuntu 没有安装 Oracle 数据库或客户端,那就没有 lsnrctl。
可检查:
which lsnrctl
如果你愿意,可以告诉我:
我可以给你更精确的配置示例。