oracle 12547怎么办,如何解决ORA-12547错误!

最近在布置一个应用程序连接oracle后台数据库,数据库为oracle11g(11.2.0.2)。应用程序属于root用户,所以需要以root用户通过系统认证的方式连接数据库。设置了root用户的环境变量并将root用户加入了dba组中。但是在root用户中启动sqlplus连接数据库一直报

ERROR:

----------------

ORA-12547: TNS:lost contact

起初以为是oracle_home目录的权限不够,给了最大的权限仍然报同样的错误。在root用户下通过网络服务名可以连接成功就是通过系统认证一直不成功,说明我的环境变量没有问题。通过一位朋友的帮助,查了oracle的maintant link。获取如下信息:

Symptoms

- Not able to make a local connection.

- Getting the following error when trying to connect to scott/tiger

ERROR:

----------------

ORA-12547: TNS:lost contact

Cause

1. This could be due to kernel parameters settings

2. Incorrect permissions on the ORACLE executable

Solution

To implement the solution, please execute the following steps:

1.

This could be due to kernel parameters settings

Please check the notes below that provide the required settings for kernel parameters

Note 169706.1 Oracle Database on AIX,HP-UX,Linux,MacOSX,Solaris,Tru64

Note 201021.1 SOLARIS: Quick Start Guide - 9.2.0 RDBMS Installation

2.

This could be due to Incorrect permissions on the ORACLE.exe

The 'ls' command should show permissions 6751 (as follows)

Please check the following:

$ cd $ORACLE_HOME/bin

$ ls -l oracle

The output should be

-rwsr-s--x 1 oracle dba

If not then please execute the following

$ chmod 6751 oracle

Please also verify if the following are correct

echo $ORACLE_HOME

echo $ORACLE_SID

echo $LD_LIBRARY_PATH

echo $PATH

3.

If the above does not resolve I suggest that you shutdown the database and listener and then

"relink all"

Note 131321.1 How to Relink Oracle Database Software on UNIX

根据提示查看系统的配置,内核参数是按照官方的说明进行配置应该没有问题可以排除。到第二个的时候发现$ORACLE_HOME/bin目录下的oracle程序权限有问题,修改为文档提示的权限后测试连接成功。原来是该脚本的权限不够导致该错误报错。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值