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

MSSQL
优化SQL Server索引的小技巧
SQL Server的空值处理策略
Windows上的MySQL UDF开发
MS SQLSERVER中如何快速获取表的记录总数
MS SQLSERVER 中如何得到表的创建语句
使用索引调节向导调整应用程序的性能
使用查询分析器调整SQL服务器脚本
SQL Server到Oracle连接服务器的实现
数据库查询结果的动态排序(6)
数据库查询结果的动态排序(7)
保持Oracle数据库优良性能的若干诀窍
数据库管理员制胜之宝
在Linux下访问MS SQL Server数据库
关于如何在查询结果中添加自动编号
如何提取除最新十条记录之外的所有记录?
一个有关DISTINCT的问题解答
关于MSSQL Server中DATETIME类型数据的处理
TOP N 和SET ROWCOUNT N 哪个更快?
金额阿拉伯数字转换为中文的存储过程
谈谈数据从sql server数据库导入mysql数据库的体验

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 55 ::
收藏到网摘: 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