oracle安装笔记-sqlplus无法启动

在任何位置输入sqlplus显示没有找到命令,如下:

[oracle@lcc bin]$ sqlplus
bash: sqlplus: command not found

在/u01/app/oracle/product/11.2.0/dbhome_1/bin目录下可以找到sqlplus,运行的时候报错:

[oracle@lcc bin]$ pwd
/u01/app/oracle/product/11.2.0/dbhome_1/bin
[oracle@lcc bin]$ sqlplus
bash: sqlplus: command not found
[oracle@lcc bin]$ ./sqlplus
Error 6 initializing SQL*Plus
SP2-0667: Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory

查看环境变量配置正确

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=ORAlcc

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:LD_LIBRARY_PATH
PATH=$ORACLE_HOME/bin:$PATH
export PATH


怀疑用户环境变量没有生效,在输入source ~/.bash_profile后可以正常进入sqlplus

[oracle@lcc ~]$ source ~/.bash_profile
[oracle@lcc ~]$ sqlplus

SQL*Plus: Release 11.2.0.1.0 Production on Sun Aug 17 05:29:18 2014

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Enter user-name:


经过查找资料发现一般默认登录使用root,然后使用su oracle更改用户,更改后orcale的环境变量不生效(CentOS6.5),所以使用su -l oracle发现环境变量生效

su的解释如下:

1. Linux系统中用户切换的命令为su,语法为:

su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]

参数说明

-f , –fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。

-l , –login:加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并

且工作目录也会改变。如果没有指定USER,缺省情况是root。

-m, -p ,–preserve-environment:执行su时不改变环境变数。

-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。

–help 显示说明文件
–version 显示版本资讯

USER:欲变更的使用者账号,
ARG: 传入新的Shell参数。

2. su [user] 和 su - [user]的区别:

su [user]切换到其他用户,但是不切换环境变量,su - [user]则是完整的切换到新的用户环境。

如:

[root@rac1 ~]# pwd  --当前目录
/root
[root@rac1 ~]# su oracle --使用su [user]
[oracle@rac1 root]$ pwd  --当前目录没有改变,还是之前的用户目录
/root
[oracle@rac1 root]$ su - oracle --使用su - [user]
Password:
[oracle@rac1 ~]$ pwd   --当前目录变为当前用户的家目录
/home/oracle
[oracle@rac1 ~]$

所以建议大家在切换用户时,尽量用su - [user],否则可能会出现环境变量不对的问题。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值