【故障处理】告警日志报“ORA-01565 Unable To open Spfile”

1.1BLOG文档结构图

1.2故障分析及解决过程

1.2.1故障环境介绍

项目

source db

db类型

RAC

db version

12.1.0.2.0

db存储

ASM

OS版本及kernel版本

SuSE LinuxEnterprise Server(SLES 11)64位

1.2.2故障发生现象及报错信息

客户的12.1.0.2的RAC库告警日志报ORA-01565: Unable To open Spfile的错误,其中一个节点在每天凌晨3点多,另外一个节点在凌晨1点多。

1.2.3故障分析及解决过程

根据MOSHow to troubleshoot ORA-01565 being reported in alert log (文档ID 1950208.1)查询出来是由于ORACLEHOME/dbs/initORACLEHOME/dbs/initORACLE_SID和OCR中的配置(srvctl config db -d racdb1)查询出来的结果不一致导致的。

解决:将两者配置修改为一致即可。

可以设置trace事件来追踪该问题,生成trace后再关闭该跟踪事件:

alter system set events '1565 trace name errorstack level 10';

alter system set events '1565 trace name context off';

另外,在12.1.0.2的RAC中,文件“/dbs/init.ora”不再使用:

The only reference to the incorrect spfile name is in /dbs/init.ora which isn't being used in 12.1.0.2:

$ cat initeaipprd1.oraSPFILE='+DATA/eaipprd/spfileeaipprd.ora'

1.3MOS

1.3.1Grid Infrastructure 12.1.0.2 ORA-01565 Unable To open Spfile (文档ID 1970979.1)

In this Document

Symptoms

Cause

Solution

References

APPLIES TO:

Oracle Database - Enterprise Edition - Version 12.1.0.2 and later Information in this document applies to any platform.demo: http://www.cnblogs.com/wuwa/

SYMPTOMS

Newly created database using dbca, seeing the following in database alert.log frequently:

Wed Nov 19 10:00:40 2014

ORA-01565: Unable to open Spfile +DATA/eaipprd/spfileeaipprd.ora.

Wed Nov 19 10:00:40 2014

ORA-01565: Unable to open Spfile +DATA/eaipprd/spfileeaipprd.ora.

Wed Nov 19 10:00:41 2014

The spfile doesn't exist, the spfile in the OCR for the database is correct:  www.pan8.net

$ srvctl config database -d eaipprd

Database unique name: eaipprd

Database name: eaipprd

Oracle home: /oracle/oracle/product/12.1.0.2_eaip

Oracle user: oracle

Spfile: +DATA/EAIPPRD/PARAMETERFILE/spfile.279.861715841

SQL> show parameter spfile;

NAME TYPE VALUE

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

spfile string +DATA/EAIPPRD/PARAMETERFILE/spfile.279.861715841

ASMCMD [+DATA/EAIPPRD/PARAMETERFILE] > ls -l

Type Redund Striped Time Sys Name

PARAMETERFILE UNPROT COARSE NOV 20 07:00:00 Y spfile.279.861715841

The only reference to the incorrect spfile name is in /dbs/init.ora which isn't being used in 12.1.0.2:

$ cat initeaipprd1.ora

SPFILE='+DATA/eaipprd/spfileeaipprd.ora'

CAUSE

The issue was investigated in multiple bugs:

BUG 20133332 - FREQUENT ALERT.LOG MSG: ORA-01565: UNABLE TO OPEN SPFILE +DATA/EAIPPRD/SPFILEEAI

BUG 19064439 - ORA-01565: UNABLE TO OPEN SPFILE ON AN IDLE SYSTEM - FOR 1 SECOND

BUG 20025790 - EM CAUSES ORA-1565 TO BE GENERATED DUE TO DBCA ISSUE

The exact cause wasn't determined.

SOLUTION

After applied 12.1.0.2 GI PSU2, the issue stopped.

1.3.2How to troubleshoot ORA-01565 being reported in alert log (文档ID 1950208.1)

In this Document

Goal

Solution

References

APPLIES TO:

Oracle Database - Enterprise Edition - Version 12.1.0.2 and later Information in this document applies to any platform.

GOAL

Troubleshooting "ORA-01565: Unable to open Spfile"

SOLUTION

When "ORA-01565: Unable to open Spfile" is being reported in the instance alert log, then some process is trying to access the spfile but referring to the incorrect location

Database Instance alert log reports the following errors

Wed Nov 19 19:26:44 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

Wed Nov 19 19:26:44 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

Wed Nov 19 19:26:44 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

Wed Nov 19 19:26:44 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

Wed Nov 19 19:26:44 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

In a situation where the error is not generating any trace files we need to set the following event at the database level

alter system set events '

1565 trace name errorstack level 10

';

Once the above event is set we can see messages as follows in the alert log when the issue occurs again

From alert log

Mon Dec 01 19:26:44 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

Mon Dec 01 19:26:44 2014

Errors in file/u01/app/oracle/diag/rdbms/racdb1/racdb1/trace/racdb1_ora_3106.trc: <<<<<<<<<<<<<<

ORA-01565: error in identifying file '+DATA/racdb1/spfileracdb1.ora'

ORA-17503: ksfdopn:2 Failed to open file +DATA/racdb1/spfileracdb1.ora

ORA-15173: entry 'spfileracdb1.ora' does not exist in directory 'racdb1'

Mon Dec 01 19:26:48 2014

Dumping diagnostic data in directory=[cdmp_20141201192648], requested by (instance=1, osid=3106), summary=[abnormal process termination].

Mon Dec 01 19:26:49 2014

ORA-01565: Unable to open Spfile +DATA/racdb1/spfileracdb1.ora.

Mon Dec 01 19:26:49 2014

Errors in file/u01/app/oracle/diag/rdbms/racdb1/racdb1/trace/racdb1_ora_3233.trc:

ORA-01565: error in identifying file '+DATA/racdb1/spfileracdb1.ora'

ORA-17503: ksfdopn:2 Failed to open file +DATA/racdb1/spfileracdb1.ora

ORA-15173: entry 'spfileracdb1.ora' does not exist in directory 'racdb1'

After the event has occurred, the tracing can be disabled as follows

alter system set events '

1565 trace name context off

';

In the current example the trace file has the following information

Trace file output

*** 2014-12-01 19:26:44.771

*** SESSION ID:(15.63147) 2014-12-01 19:26:44.771

*** CLIENT ID:() 2014-12-01 19:26:44.771

*** SERVICE NAME:(SYS$USERS) 2014-12-01 19:26:44.771

*** MODULE NAME:(sqlplus@nracdb1 (TNS V1-V3)) 2014-12-01 19:26:44.771

*** CLIENT DRIVER:(SQL*PLUS) 2014-12-01 19:26:44.771

*** ACTION NAME:() 2014-12-01 19:26:44.771

*** CONTAINER ID:(1) 2014-12-01 19:26:44.771

dbkedDefDump(): Starting a non-incident diagnostic dump (flags=0x0, level=10, mask=0x0)

----- Error Stack Dump -----

ORA-01565: error in identifying file '+DATA/racdb1/spfileracdb1.ora'

ORA-17503: ksfdopn:2 Failed to open file +DATA/racdb1/spfileracdb1.ora

ORA-15173: entry 'spfileracdb1.ora' does not exist in directory 'racdb1'

----- Current SQL Statement for this session (sql_id=37hr89tuy952y) -----

CREATE PFILE='/tmp/RUwOs966FJ' FROM SPFILE='+DATA/racdb1/spfileracdb1.ora'

The actual SPFILE location of the database can be checked from the alert log or database configuration

From alert log

Thu Oct 30 10:55:26 2014

Starting ORACLE instance (normal) (OS id: 10576)

Thu Oct 30 10:55:26 2014

RECOMMENDATION:

Thu Oct 30 10:55:26 2014

1. For optimal performance, configure system with expected number

of pages for every supported system pagesize prior to the next

instance restart operation.

Thu Oct 30 10:55:26 2014

**********************************************************************

LICENSE_MAX_SESSION = 0

LICENSE_SESSIONS_WARNING = 0

Initial number of CPU is 4

Picked latch-free SCN scheme 3

Autotune of undo retention is turned on.

IMODE=BR

ILAT =101

LICENSE_MAX_USERS = 0

SYS auditing is enabled

NOTE: remote asm mode is local (mode 0x1; from cluster type)

NOTE: Using default ASM root directory ASM

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options.

ORACLE_HOME = /u01/app/oracle/product/12.1.0/db_1

System name: Linux

Node name: lo03dox3

Release: 2.6.32-431.29.2.el6.x86_64

Version: #1 SMP Sun Jul 27 15:55:46 EDT 2014

Machine: x86_64

Using parameter settings in server-side spfile+DATA/spfileracdb1.ora

From the config output

srvctl config database -d racdb1

Database unique name: racdb1

Database name: racdb1

Oracle home: /u01/app/oracle/product/12.1.0/db_1

Oracle user: oracle

Spfile: +DATA/spfileracdb1.ora

Password file:

Domain:

Start options: open

Stop options: immediate

Database role: PRIMARY

Management policy: AUTOMATIC

Disk Groups: FRA,DATA

Services: test1, test2

OSDBA group:

OSOPER group:

Database instance: racdb1

From the above it is clear that the actual location of the spfile is"+DATA/spfileracdb1.ora"however the process is trying to access the spfile from"+DATA/racdb1/spfileracdb1.ora"

In such a situation the reference of the spfile needs to be corrected by the process.

REFERENCES

BUG:18334406- ORA-01565 ERROR ON THE TWO RAC NODES BUG:9906253- ORA-01565: UNABLE TO OPEN SPFILE EACH SIX HOURS

oracle unable to open file,告警日志报“ORA-01565 Unable To open Spfile”相关推荐

  1. 【故障处理】告警日志报“ORA-01565 Unable To open Spfile”

    [故障处理]告警日志报"ORA-01565 Unable To open Spfile" 1.1  BLOG文档结构图 1.2  故障分析及解决过程 1.2.1  故障环境介绍 项 ...

  2. 宝塔面板Java 项目一键部署 一键启动spring boot 日志报错 Error: Unable to access jarfile xxx.jar--service

    根据宝塔官方部署教程 部署SpringBoot项目的时候日志里面写着这么一句话Error: Unable to access jarfile xxx.jar--service 疑惑了一会,后来才发现原 ...

  3. oracle11告警日志,oracle 11.2.0.4 告警日志里错误

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 查一下你的日志切换频率 SELECT TO_CHAR(TRUNC(FIRST_TIME),'Mon DD') "Date", TO_C ...

  4. ORACLE告警日志文件

    告警日志介绍 告警日志文件是一类特殊的跟踪文件(trace file).告警日志文件命名一般为alert_<SID>.log,其中SID为ORACLE数据库实例名称.数据库告警日志是按时间 ...

  5. 归档—监控ORACLE数据库告警日志

    ORACLE的告警日志里面包含许多有用的信息,尤其是一些ORACLE的ORA错误信息,所以有必要及时归档.监控数据库告警日志的ORA错误,及时提醒数据库管理员DBA处理这些错误信息,那么我们首先来看看 ...

  6. Oracle报错1031,dataguard 归档日志报1031错误的一次处理

    oracle rac dataguard 归档日志报1031错误  操作系统 red  hat5.4  oracle 10.2.0.5 rac日志报错如下 Tue Jun 21 15:33:16 CS ...

  7. Linux/Unix shell 监控Oracle告警日志(monitor alter log file)

    使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...

  8. Oracle 11g 中告警日志的位置

    Oracle 11g 中告警日志的位置 首先介绍2个新名词 Automatic Diagnostic Repository (ADR)一个存放数据库诊断日志.跟踪文件的目录,称作ADR base,对应 ...

  9. Oracle的告警日志之v$diag_alert_ext视图

    Oracle的告警日志之v$diag_alert_ext视图 Oracle的告警日志之v$diag_alert_ext视图 最近由于自己写的一个job老是报错,找不出来原因,数据库linux的term ...

最新文章

  1. C++(一)——存储持续性、作用域、链接性
  2. 理解图像中卷积操作的含义
  3. Java解析Rss(三)
  4. greenDao 3.0基础
  5. 单目相机 svd 从图像恢复3维位置_IMU辅助下的单目视觉坐标传递
  6. LevelDB源码之五Current文件\Manifest文件\版本信息
  7. thinkphp sql查询条件 一个字段多个限制条件
  8. C#关于AutoResetEvent的使用介绍[转载]
  9. 富勒wms系统里的定时器id_「案例」全面升级的康缘药业物流系统
  10. 水晶易表Xcelsius 2008安装常见问题小结
  11. Labview实时电压显示
  12. Vue - 判断访问网页客户端设备是手机移动端还是 PC 电脑端(判断设备类型是否是移动端手机)
  13. java三次指数平滑_时间序列挖掘-预测算法-三次指数平滑法(Holt-Winters)
  14. 为什么建议大家一定要办一张大流量卡!
  15. Pytorch应用训练好的模型
  16. 智能家居创意DIY之智能插座(Homekit可用)
  17. 小程序用vue开发可以吗,vue直接开发小程序
  18. 数字信号处理实验一(离散时间信号的MATLAB实现)
  19. python展现决策树_使用Python实现决策树
  20. 微波辐射数据读取与处理

热门文章

  1. pom文件报错 jai_core-1.1.3.jar
  2. Unix/Linux操作系统分析实验二 内存分配与回收:Linux系统下利用链表实现动态内存分配
  3. 用HJ6302模块进行S7-200Smart与G120XA系列变频器进行通讯
  4. 002-01朴素贝叶斯到语言模型
  5. 三分钟扫盲,网络割接如何高效进行?割接前后有哪些步骤和注意点?
  6. python rpy2时间序列_时间序列(二):时序预测那些事儿
  7. python true和false是什么,Python True真和False假的含义是什么?
  8. 安卓APK去广告的一种方法
  9. 超级马里奥源代码_太惨了!任天堂遭史上最严重黑客攻击,完整源代码泄露
  10. oracle 查看数据泵,1.Oracle数据泵介绍