oracle报错
今天在做实验的时候发现在linux下使用sqlplus /nolog 报错,
[oracle@localhost ~]$ sqlplus /nolog
-bash: sqlplus: command not found
于是开始找错误原因,在安装的时候没有报错,包括建立数据库的时候也没有任何错误提示,这时我就在想会不会是bash路径的问题我就echo $oracle_home为空,echo $path也为空,问题就出在这里了。
然后我
export ORACLE_HOME=<your Oracle Home>
export PATH=$ORACLE_HOME/bin:$PATH
再次运行Sqlplus命令,ok,可以了。
最后,我用vi编辑 .bash_profile文件,把
export ORACLE_HOME=<your 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。
然后存盘退出,重启系统。
相关新闻>>
- 发表评论
-
- 最新评论 更多>>