ITPub博客

首页 > 数据库 > Oracle > sqlplus: error while loading shared libraries的解决方案

sqlplus: error while loading shared libraries的解决方案

原创 Oracle 作者:zhenghaishu 时间:2014-09-06 17:05:12 0 删除 编辑

sqlplus: error while loading shared librari的解决方案


环境:VMWare Workstation + Redhat + Oracle

问题产生:
建好oracle库后,执行sqlplus命令:
[oracle@localhost database]$ sqlplus /nolog
sqlplus: error while loading shared libraries: /oracle/app/product/11.2.0/lib/libclntsh.so.11.1: cannot restore segment prot after reloc: Permission denied


问题原因:安装LINUX时开启了SELinux


解决方案:关闭SELinux

第一种方法
(1)查看SELinux的状态,若为Enforcing表示SELinux为开启状态
[root@mydb]# getenforce
Enforcing

(2)执行setenforce 0将SELinux设为permissive模式(即临时关闭SElinux)
[root@mydb]# setenforce 0

(3)验证上步操作的结果
[root@mydb]# getenforce
Permissive

这种方法的缺点是当系统重启的时候,SELinux又恢复为Enforcing状态,执行sqlplus仍然会报错。

第二种方法
用root账户将/etc/selinux/config中的SELinux=enforcing改为SELinux=disabled,改完之后如下所示:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted

重启系统让设置生效:
# reboot

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29485627/viewspace-1265239/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-02-14

  • 博文量
    112
  • 访问量
    1057357