linux系统oracle执行sqlplus找不到

linux系统oracle执行sqlplus找不到,求大神
2024-11-16 22:31:56
推荐回答(4个)
回答1:

linux系统oracle执行sqlplus找不到是设置错误造成的,解决方法为:

1、将ORACLE客户端rpm安装包传输到linux系统。

2、ROOT用户先后执行rpm包安装命令。

3、安装完成后,自动生成客户端所在目录/usr/lib/oracle/12.1/client64,其下bin、lib目录分别存储可执行文件和对应的连接库。

4、在/usr/lib/oracle/12.1/client64目录下,用vi命令,创建并配置Oracle客户端的网络服务名配置文件tnsnames.ora。

5、登录sqlplus使用用户,在.bash_profile中设置ORACLE客户端环境变量。

6、在.bash_profile中,将sqlplus所在的路径添加到PATH环境变量中。

7、完成安装后,可以在命令窗口用sqlplus按对应用户名密码连接远程的oracle数据库,读取表了。

回答2:

你是用什么用户的登录的,需要设置用户环境变量,如下图:

登录后

cd ~ 进入用户家目录

ls -al 找到环境变量配置文件.bash_profile,它是隐藏文件

我的.bash_profile文件配置如下,请参考:

ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=to_26
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$LD_LIBRARY_PATH
THREADS_FLAG=native
ORACLE_OEM_JAVARUNTIME=/opt/jre1.3.1_15
PATH=$PATH:$ORACLE_HOME/bin
NLS_LANG="AMERICAN_AMERICA.AL32UTF8"

export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH THREADS_FLAG ORACLE_OEM_JAVARUNTIME PATH NLS_LANG

回答3:

su - oracle
which sqlplus
如果找不到说明没有PATH环境变量设置
有个命令oraenv,需要你输入实例名,然后它会根据/etc/oratab里的数据库设置你的环境变量
运行时前面有个点和空格(. oraenv)
这样就省去了一系列变量的设置(grid和oracle用户只需要默认的profile)

回答4:

PATH变量设置了没?export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin