当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 机器异常关闭重起后出现ora-19809错误

MSSQL
无数据库日志文件恢复数据库方法两则(一)
SQLServer编写存储过程小工具(一)
SQLServer编写存储过程小工具(二)
SQLServer编写存储过程小工具(三)
Eclipse+JBoss+MySQL开发环境设置
MYSQL使用简述
一些有用的sql语句实例
枚举SQLServer的实例
SQLServer应用程序中的高级SQL注入
SQL Server数据库超级管理员账号防护知识
讲解如何实现互联网上数据库的安全
SQL 2005数据库转到SQL 2000的步骤讲解
带你轻松接触数据库生成xml的两个方法
用MS SQL Reporting Services生成报表
保护SQL Server的十个步骤
关于SQL SERVER的一些安全问题
SQL Server 2008数据库中使用表值参数
SQL Server 2005中用存储过程实现搜索功能
MS SQL数据库置疑解决办法
SQL Server密码管理的六个危险判断

MSSQL 中的 机器异常关闭重起后出现ora-19809错误


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 74 ::
收藏到网摘: n/a

案例:机器异常关闭,重起后出现ora-19809超出恢复文件限制错误:

ORA-16038: log 3 sequence# 1126 cannot be archived

ORA-19809: limit exceeded for recovery files

ORA-00312: online log 3 thread 1: '/opt/oracle/product/10.1/oradata/orcl/redo03.log'

Oracle数据库10g默认的归档日志存放在flash_recovery_area,而默认安装的时候该区间选择了1G大小。

在归档日志超过1G的时候,空间不足,于是无法归档,当时手工删除归档日志文件,Oracle数据库由于无法识别空间是否释放。导致数据库出现无法无法启动的现象。

解决方法:

1、mount数据库

sql> startup mount (注意,这时候还会报错,但是可以更改系统参数)

2、 更改系统参数

sql> alter system set db_recovery_file_dest_size=2g scope=both;

参数db_recovery_file_dest_size的值根据磁盘剩余空间大小和实际需要来设置,没有定论。

3、打开数据库

sql> alter database open

4、删除失效归档日志

rman

RMAN> connect target /

RMAN> crosscheck archivelog all;

RMAN> delete expired archivelog all;

RMAN>exit

5、重新启动数据库

sql> shutdown immediate

sql> startup