ORA-07274: spdcr: access error, access to oracle denied.

wuweilong發表於2014-09-03

ORA-07274: spdcr: access error, access to oracle denied.

 

 

問題現象:

在執行sqlplus / as sysdba 登陸資料庫的時候報ORA-12545錯誤,如下:

  1. [oracle@source ~]$ sqlplus / as sysdba
  2. ORA-12545:Connect failed because target host or object does not exist

問題分析:

     從報錯資訊上來看,這個問題應該是個簡單且常見的問題,通常都會是由於SID不正確,主機指向不對和在SQLNET.ora中關閉了本地驗證,均會報如上錯誤,但是透過檢查,都是沒有問題的,如下:

 

問題解決思路一:

首先我們應當檢查上面提到的那幾項,結果都沒有問題,但是就是死活登不上去: 

  1. [oracle@source ~]$ cat /etc/hosts
  2. # Do not remove the following line, or various programs
  3. # that require network functionality will fail.
  4. 127.0.0.1 localhost.localdomain localhost
  5.  
  6. 192.168.7.20 source
  7. 192.168.7.21 target
  8.  
  9. [oracle@source ~]$ echo $ORACLE_SID
  10. woo
  11.  
  12. [oracle@source ~]$ cat /DBSoft/product/11.2.4/db_1/network/admin/listener.ora
  13. # listener.ora Network Configuration File: /DBSoft/product/11.2.4/db_1/network/admin/listener.ora
  14. # Generated by Oracle configuration tools.
  15.  
  16. LISTENER =
  17.   (DESCRIPTION_LIST =
  18.     (DESCRIPTION =
  19.       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
  20.       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.20)(PORT = 1521))
  21.     )
  22.   )
  23.  
  24. ADR_BASE_LISTENER = /DBSoft
  25.  
  26. [oracle@source ~]$ cat /DBSoft/product/11.2.4/db_1/network/admin/sqlnet.ora
  27. # sqlnet.ora Network Configuration File: /DBSoft/product/11.2.4/db_1/network/admin/sqlnet.ora
  28. # Generated by Oracle configuration tools.
  29.  
  30. NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
  31.  
  32. ADR_BASE = /DBSoft 

解決問題思路二:

從上並未發現什麼有價值的資訊,隨即檢查alert 告警日誌檔案,發下如下報錯:

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

從這個錯誤資訊上來看非常陌生,隨即上網際網路查詢有沒有解決辦法看到askmaclean的blog中有一篇文件對此有介紹,但是環境不一樣,實在不行也就死馬當活馬醫了,隨即展開問題的解決:

 

問題解決步驟:

         從askmaclean部落格中可以看出可能是由於$ORACLE_HOME/bin目錄中的oracle檔案狀態不對導致該問題的發生,我對此問題的解決步驟如下:

  1. 1、檢視$ORACLE_HOME/bin/ 目錄中的oracle這個檔案,可以發現沒有
  2. [oracle@source ~]$ ll $ORACLE_HOME/bin/oracle
  3. ls: /DBSoft/product/11.2.4/db_1/bin/oracle: No such file or directory
  4.  
  5. 2、隨即從其它正常節點將此檔案複製到該目錄中
  6. [oracle@target ~]$scp $ORACLE_HOME/bin/oracle source: $ORACLE_HOME/bin/
  7.  
  8. 3、再次檢視該檔案及相關許可權,可以看出都是對的
  9. [oracle@source ~]$ ll $ORACLE_HOME/bin/oracle
  10. -rwsr-s--x 1 oracle oinstall 239627073 Sep 2 22:38 /DBSoft/product/11.2.4/db_1/bin/oracle
  11.  
  12. 4、再次登陸sqlplus,成功,問題解決。
  13. [oracle@source ~]$ sqlplus / as sysdba
  14.  
  15. SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 3 00:12:54 2014
  16.  
  17. Copyright (c) 1982, 2013, Oracle. All rights reserved.
  18.  
  19.  
  20. Connected to:
  21. Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
  22. With the Partitioning, OLAP, Data Mining and Real Application Testing options
  23.  
  24. SQL>

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20674423/viewspace-1262454/,如需轉載,請註明出處,否則將追究法律責任。

相關文章