db_recovery_file_dest_size 满导致数据库启动失败

启动数据库时:

[email protected]>startup
ORACLE instance started.
Total System Global Area  417546240 bytes
Fixed Size                  2213936 bytes
Variable Size             327157712 bytes
Database Buffers           83886080 bytes
Redo Buffers                4288512 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 1935
Session ID: 1 Serial number: 5

利用10046 事件跟踪数据库打开过程:

[email protected]>startup mount
ORACLE instance started.
Total System Global Area  417546240 bytes
Fixed Size                  2213936 bytes
Variable Size             327157712 bytes
Database Buffers           83886080 bytes
Redo Buffers                4288512 bytes
Database mounted.
[email protected]>oradebug setmypid
Statement processed.
[email protected]>
[email protected]>
[email protected]>oradebug event 10046 trace name context forever,level 12;
Statement processed.
[email protected]>
[email protected]>
[email protected]>oradebug tracefile_name
/opt/oracle/diag/rdbms/orcl11g/orcl11g/trace/orcl11g_ora_1727.trc
[email protected]>alter database open;
alter database open
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 1727
Session ID: 1 Serial number: 5

查看trace文件:

ORA-19815: WARNING: db_recovery_file_dest_size of 4070572032 bytes is 100.00% used, and has 0 remaining bytes available.
************************************************************************
You have following choices to free up space from recovery area:
1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
   then consider changing RMAN ARCHIVELOG DELETION POLICY.
2. Back up files to tertiary device such as tape using RMAN
   BACKUP RECOVERY AREA command.
3. Add disk space and increase db_recovery_file_dest_size parameter to
   reflect the new space.
4. Delete unnecessary files using RMAN DELETE command. If an operating
   system command was used to delete files, then use RMAN CROSSCHECK and
   DELETE EXPIRED commands.
************************************************************************
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 43927552 bytes disk space from 4070572032 limit
*** 2014-11-15 21:20:56.648 4132 krsh.c
ARCH: Error 19809 Creating archive log file to '/opt/oracle/flash_recovery_area/ORCL11G/archivelog/2014_11_15/o1_mf_1_52_%u_.arc'
*** 2014-11-15 21:20:56.648 2747 krsi.c
krsi_dst_fail: dest:1 err:19809 force:0 blast:1
WAIT #1: nam='log file sequential read' ela= 5 log#=0 block#=0 blocks=0 obj#=-1 tim=1416104456648722
WAIT #1: nam='Disk file operations I/O' ela= 15 FileOperation=5 fileno=0 filetype=3 obj#=-1 tim=1416104456648774
WAIT #1: nam='control file sequential read' ela= 14 file#=0 block#=1 blocks=1 obj#=-1 tim=1416104456648863
WAIT #1: nam='control file sequential read' ela= 11 file#=0 block#=15 blocks=1 obj#=-1 tim=1416104456648969
WAIT #1: nam='control file sequential read' ela= 10 file#=0 block#=17 blocks=1 obj#=-1 tim=1416104456649013
WAIT #1: nam='control file sequential read' ela= 10 file#=0 block#=22 blocks=1 obj#=-1 tim=1416104456649075
WAIT #1: nam='control file parallel write' ela= 4671 files=1 block#=21 requests=1 obj#=-1 tim=1416104456653795
WAIT #1: nam='control file parallel write' ela= 956 files=1 block#=18 requests=1 obj#=-1 tim=1416104456654862
WAIT #1: nam='control file parallel write' ela= 1817 files=1 block#=16 requests=1 obj#=-1 tim=1416104456656679
WAIT #1: nam='control file parallel write' ela= 1295 files=1 block#=1 requests=1 obj#=-1 tim=1416104456658021
WAIT #1: nam='control file sequential read' ela= 14 file#=0 block#=1 blocks=1 obj#=-1 tim=1416104456658082
WAIT #1: nam='control file sequential read' ela= 12 file#=0 block#=32 blocks=1 obj#=-1 tim=1416104456658162
DDE: Problem Key 'ORA 312' was flood controlled (0x1) (no incident)
ORA-00312: online log 1 thread 1: '/opt/oracle/oradata/orcl11g/redo01.log'
ORA-16038: log 1 sequence# 52 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 1 thread 1: '/opt/oracle/oradata/orcl11g/redo01.log'
www.zbdba.com
*** 2014-11-15 21:20:56.660
USER (ospid: 2247): terminating the instance due to error 16038

原来是flash_recovery_area满了,无法进行归档。增加db_recovery_file_dest_size:

[email protected]>alter system set db_recovery_file_dest_size=8G scope=spfile;

System altered.
[email protected]>startup
ORACLE instance started.
Total System Global Area  417546240 bytes
Fixed Size                  2213936 bytes
Variable Size             327157712 bytes
Database Buffers           83886080 bytes
Redo Buffers                4288512 bytes
Database mounted.
Database opened.
[email protected]>show parameter recover
NAME                                 TYPE                   VALUE
------------------------------------ ---------------------- ------------------------------
db_recovery_file_dest                string                 /opt/oracle/flash_recovery_are
                                                            a
db_recovery_file_dest_size           big integer            8G
recovery_parallelism                 integer                0

至此已经打开数据库,所以数据库启动失败,我们利用10046事件跟踪就能发现具体的原因。

时间: 2024-08-06 07:56:03

db_recovery_file_dest_size 满导致数据库启动失败的相关文章

SPFILE导致数据库启动失败

服务器断电重启后,报数据库服务无法启动,在服务器上使用AS SYSDBA 登录后连接到空实例, 使用startup启动时报'ORA-24324: 未初始化服务句柄,ORA-01041: 内部错误, hostdef 扩展名不存在'错误. 分步启动startup nomount ,依然报以上错误,判断为spfile文件损坏造成.但本机没有使用pfile备份过spfile,而修改spfile要启动修改. 解决办法,手工创建pfile 文件INITSID.ORA,打开alert日志,找到数据库启动信息,

mysql数据库启动失败

1.原因公司服务器故障,非正常停机导致数据库启动失败.报错信息[[email protected] dmp]# /etc/init.d/mysqld startStarting MySQL. ERROR! The server quit without updating PID file (/opt/mysql/data/15-144.pid). 2.查看mysql 日志180625 16:08:17 mysqld_safe Starting mysqld daemon with databas

物理磁盘空间使用已满导致数据库hang起

情况描述 一天公司小张过来咨询,说是数据库查询报错了:乍一看好像是数据库有坏快了,为了排查更加详细的错误信息,决定查看一下告警日志,发现问题所在,原来是数据库的物理磁盘空间满了 Writing to the above trace file is disabled for now on... Tue Jul 29 17:30:32 2014 Non critical error ORA-48181 caught while writing to trace file "/u01/app/orac

Windows 更新导致 VirtualBox 启动失败 VBoxDrvStub error

win8 导入virtualbox介质发生错误, NtCreateFile(\Device\VBoxDrvStub) failed: Unkown Status - 5600 (0xffffea20) (rcNt=0xe986ea20) VBoxDrvStub error: ntdll.dll: 7982 differences between 0x300c and 0x4fff in #1 (.text), first: 4c != 1f (rc=-5600) 尝试了各种办法,下载非最新版本v

ORA-03113: end-of-file on communication channel 磁盘慢,数据库启动失败

磁盘慢,数据库启动失败:解决思路:1.让数据文件offline: 2.删除表空间 SQL> startup pfile='/server/oracle/admin/test/pfile/inittest.ora' ORACLE instance started. Total System Global Area 776646656 bytes Fixed Size 2217384 bytes Variable Size 583010904 bytes Database Buffers 18874

ORA-01078和LRM-00109问题导致ORACLE启动失败解决方法

操作环境 SuSE11 + ORACLE11gR2(11.2.0.3) 问题现象 新安装ORACLE启动失败,提示ORA-01078和LRM-00109错误.具体错误现象如下 SQL> startup ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/home/oracle/base/dbs/initora11g.ora'  问题分析 根据错误分析是查找不到参

记一次Postgresql异常中断导致的启动失败

由于异常导致了测试服务器的Pg11宕机,启动时候报错 2019-06-11 14:20:08.121 CST [9980] 致命错误: 数据库系统启动中 2019-06-11 14:20:08.121 CST [9981] 致命错误: 数据库系统启动中 2019-06-11 14:20:08.121 CST [9964] 致命错误: 数据库系统启动中 2019-06-11 14:20:08.121 CST [9970] 致命错误: 数据库系统启动中 2019-06-11 14:20:08.121

Windows 更新导致 VirtualBox 启动失败

我的虚拟机版本是 4.3.20, Windows 版本是 Windows 8,但今天突然发现 VirtualBox 启动不了,报的错误如下: 为了搜索引擎能检索到此错误信息,我将错误信息的文本贴在下面: NtCreateFile(\Device\VBoxDrvStub) failed: Unkown Status - 5600 (0xffffea20) (rcNt=0xe986ea20) VBoxDrvStub error: ntdll.dll: 7982 differences between

ZooKeeper集群搭建中的Connection refused而导致的启动失败

1. 前言 每一次搭建集群环境都像一次战斗,作战中任何一个细节的出错都会导致严重的后果,所以搭建中所需要做的配置如系统配置.网络配置(防火墙记得关).用户权限.文件权限还有配置文件等等内容,都必须非常仔细,将失误扼杀在摇篮之中,避免因为粗心或者想要提高速度省下的一分钟,在后面付出几个小时的调试时间,因小失大实在不值,切记核对.核对再核对. 今天就来说说在搭建ZooKeeper集群遇到的一个常见的问题Connection refused,也就是网上很多朋友也会出现的问题,问题的表现也许是一样,但是