ORA-07274: spdcr: access error, access to oracledenied.

ORA-07274: spdcr: access error, access to oracledenied.

 

 

问题现象:

在执行sqlplus / as sysdba 登陆数据库的时候报ORA-12545错误,如下:

[oracle@source ~]$ sqlplus / as sysdba
ORA-12545:Connect failed because targethost or object does not exist
 

问题分析:

从报错信息上来看,这个问题应该是个简单且常见的问题,通常都会是由于SID不正确,主机指向不对和在SQLNET.ora中关闭了本地验证,均会报如上错误,但是通过检查,都是没有问题的,如下:

 

问题解决思路一:

首先我们应当检查上面提到的那几项,结果都没有问题,但是就是死活登不上去:

[oracle@source ~]$ cat /etc/hosts

 # Do not remove the following line, orvarious programs
# that require network functionality will fail.

127.0.0.1               localhost.localdomain localhost

192.168.7.20            source
192.168.7.21            target

[oracle@source ~]$ echo $ORACLE_SID
woo

[oracle@source ~]$ cat/DBSoft/product/11.2.4/db_1/network/admin/listener.ora
# listener.ora Network Configuration File:/DBSoft/product/11.2.4/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
 
LISTENER =
 (DESCRIPTION_LIST =
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.20)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = /DBSoft

[oracle@source ~]$ cat/DBSoft/product/11.2.4/db_1/network/admin/sqlnet.ora
# sqlnet.ora Network Configuration File:/DBSoft/product/11.2.4/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
ADR_BASE = /DBSoft

解决问题思路二:

从上并未发现什么有价值的信息,随即检查alert告警日志文件,发下如下报错:

[oracle@source~]$tail -50 $ORACLE_BASE/diag/Woo/woo/alert_woo.log |grep ORA-
ORA-07274: spdcr: access error, access to oracledenied.
 

从这个错误信息上来看非常陌生,随即上互联网查找有没有解决办法看到askmacleanblog中有一篇文档对此有介绍,但是环境不一样,实在不行也就死马当活马医了,随即展开问题的解决:

 

问题解决步骤:

         askmaclean博客中可以看出可能是由于$ORACLE_HOME/bin目录中的oracle文件状态不对导致该问题的发生,我对此问题的解决步骤如下:

1、查看$ORACLE_HOME/bin/ 目录中的oracle这个文件,可以发现没有
[oracle@source ~]$ ll$ORACLE_HOME/bin/oracle
ls: /DBSoft/product/11.2.4/db_1/bin/oracle:No such file or directory

2、随即从其它正常节点将此文件拷贝到该目录中
[oracle@target ~]$scp$ORACLE_HOME/bin/oracle source: $ORACLE_HOME/bin/

3、再次查看该文件及相关权限,可以看出都是对的
[oracle@source ~]$ ll$ORACLE_HOME/bin/oracle
-rwsr-s--x 1 oracle oinstall 239627073Sep  2 22:38/DBSoft/product/11.2.4/db_1/bin/oracle

4、再次登陆sqlplus,成功,问题解决。
[oracle@source ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production onWed Sep 3 00:12:54 2014
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:

Oracle Database 11g Enterprise EditionRelease 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Miningand Real Application Testing options
SQL>

 


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。