在 Ubuntu 上,lsnrctl 不是单独下载的,它是 Oracle Database(Oracle 数据库) 的一部分,属于 Oracle Net Services 工具。
lsnrctl 位于 Oracle 数据库软件安装目录中,例如:
$ORACLE_HOME/bin/lsnrctl
典型路径示例:
/u01/app/oracle/product/19.3.0/dbhome_1/bin/lsnrctl
lsnrctl 只能通过安装 Oracle Database 获得,Ubuntu 默认仓库里没有。
下载 Oracle Database
常见版本:
解压并安装
unzip LINUX.X64_193000_db_home.zip
./runInstaller
配置环境变量
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
验证
which lsnrctl
lsnrctl status
如果你只是想用 lsnrctl,不建议在 Ubuntu 直接安装 Oracle,用 Docker 更省事。
docker run -d \
--name oracle19c \
-p 1521:1521 \
-p 5500:5500 \
-e ORACLE_PWD=oracle \
container-registry.oracle.com/database/enterprise:19.3.0.0
进入容器:
docker exec -it oracle19c bash
su - oracle
lsnrctl status
❌ 不行
Oracle 不提供单独的 lsnrctl 下载包,必须随 Oracle Database 一起安装。
libaio1、libstdc++)安装依赖示例:
sudo apt update
sudo apt install libaio1 libaio-dev
| 问题 | 答案 |
|---|---|
| lsnrctl 在哪下载 | 随 Oracle Database 一起 |
| Ubuntu 能装吗 | 能,但推荐 Docker |
| 能单独下载吗 | 不能 |
| 推荐方式 | Docker / Oracle Linux |
如果你愿意,可以告诉我:
我可以给你 一步一步的详细安装方案。