在 Debian 上,lsnrctl 是 Oracle Database(通常随 Oracle Instant Client 或完整 Oracle 软件) 自带的工具,用来管理 Oracle 监听器(Listener)。它本身不能单独“升级”,升级 lsnrctl 实际上是要升级对应的 Oracle 软件版本。
下面分情况说明:
先看看当前 lsnrctl 属于哪个 Oracle 安装:
which lsnrctl
常见路径示例:
/u01/app/oracle/product/19.3.0/dbhome_1/bin/lsnrctl/opt/oracle/product/21c/dbhome_1/bin/lsnrctllsnrctl version
lsnrctl 随数据库软件一起升级。
dbua 或手动升级数据库lsnrctl 即为新版本export ORACLE_HOME=/u01/app/oracle/product/21c/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
⚠️ Instant Client 没有 lsnrctl
如果你现在能用 lsnrctl,说明你装的是 完整 Oracle Client 或 Database。
export ORACLE_HOME=/opt/oracle/client21
export PATH=$ORACLE_HOME/bin:$PATH
cp old_ORACLE_HOME/network/admin/*.ora $ORACLE_HOME/network/admin/
container-registry.oracle.comlsnrctl version
lsnrctl status
Debian 上升级 lsnrctl = 升级 Oracle 软件(Database / Client),不能单独升级。
如果你愿意,可以告诉我:
我可以给你更精确的升级步骤。