在 Debian 里出现 sqlplus: command not found,通常是因为 没有安装 Oracle 客户端,或者 环境变量没配置好。下面按步骤来解决。
先执行:
which sqlplus
如果没有任何输出,说明 sqlplus 未安装或未加入 PATH。
Debian / Ubuntu 官方仓库里没有 sqlplus,它是 Oracle 官方软件,需要手动安装。
你有几种选择:
去 Oracle 官网(需登录): https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html
下载以下两个包(以 19c 为例):
oracle-instantclient-basicoracle-instantclient-sqlplus例如:
oracle-instantclient19.19-basic-19.19.0.0.0-1.x86_64.rpm
oracle-instantclient19.19-sqlplus-19.19.0.0.0-1.x86_64.rpm
sudo apt update
sudo apt install alien libaio1
sudo alien -i oracle-instantclient*.rpm
编辑 ~/.bashrc 或 /etc/profile:
export ORACLE_HOME=/usr/lib/oracle/19.19/client64
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
使配置生效:
source ~/.bashrc
sqlplus -v
docker run -it --rm sflyr/sqlplus
或官方 Oracle 镜像。
如果你是搞混了:
mysqlpsqlsudo apt install mysql-client
sudo apt install postgresql-client
❌ Debian 没有 sqlplus 包
❌ 只装了 basic,没装 sqlplus
❌ 没配置 PATH
❌ 缺少 libaio
如果你愿意,可以告诉我:
我可以给你精确命令。