oracle报错

2014-11-24 08:06:45 · 作者: · 浏览: 3

今天在做实验的时候发现在linux下使用sqlplus /nolog 报错,
[oracle@localhost ~]$ sqlplus /nolog
-bash: sqlplus: command not found

于是开始找错误原因,在安装的时候没有报错,包括建立数据库的时候也没有任何错误提示,这时我就在想会不会是bash路径的问题我就echo $oracle_home为空,echo $path也为空,问题就出在这里了。
然后我
export ORACLE_HOME=Oracle Home>
export PATH=$ORACLE_HOME/bin:$PATH
再次运行Sqlplus命令,ok,可以了。
最后,我用vi编辑 .bash_profile文件,把
export ORACLE_HOME=
export PATH=$ORACLE_HOME/bin:$PATH
加入.bash_profile中。保存。
重新进入Linux系统,sqlplus命令一切正常
其实上面这个问题的主要原因是由于直接由root用户切换到oracle用户所以继承的是root的环境变量所致
如果直接以oracle用户登录则不会出现以上情况
第二次实验依然报错
oracle启动listener及Sqlplus报错



报错内容如下:
./lsnrctl: error while loading shared libraries: /u01/app/oracle/product/11.1.0/db_1/lib/libnnz11.so: cannot restore segment prot after reloc: Permission denied
在启动sqlplus时有会有,类似报错:
sqlplus: error while loading shared libraries: /u01/app/oracle/product/11.1.0/db_1/lib/libnnz11.so: cannot restore segment prot after reloc: Permission denied
其主要原因是使用了SELINUX。将其状态设置为disabled即可,方法如下:
打开/etc/selinux/config,
将selinux=enforcing或permissive改成disabled。

然后存盘退出,重启系统。