ORA-00257归档程序错误


线上生成系统后台日志连接数据库报ORA-00257归档程序错误。借此了解下oracle日志归档模式和非归档模式以及如何解决该问题。

Oracle日志操作模式

    Oracle数据库在运行过程中,每一个实例都有一个相关的重做日志,在实例故障情况下保护数据库。

    我们对数据的DML,DDL操作都会结构化为重做记录,可以用来重建对数据库所做的所有更改的数据,包括撤销段。 重做记录在SGA的重做日志缓冲区中以循环方式进行缓冲,并被数据库后台进程log Writer (LGWR)写入其中一个重做日志文件(Redo log files)中 由数据库库后台进程log Writer(LGWR)写入联机重做日志(Redo log files)中,当重做日志文件被填满时,会发生日志切换,根据是否启用归档分为两种情况:

1、如果归档被禁用(NOARCHIVELOG模式),则在将在记录在其中的更改写入数据文件后,这个填满的重做日志文件可用。

2、如果启用了归档(ARCHIVELOG模式),则在将记录的更改写入数据文件并归档后,LGWR就可以使用这个被填满的重做日志文件。

归档优缺点

    可以进行完全、不完全恢复:由于对数据库所做的全部改动都记录在日志文件中,如果发生硬盘故障等导致数据文件丢失的话,则可以利用物理备份和归档日志完全恢复数据库,不会丢失任何数据。

一般生产系统推荐都开启归档模式,毕竟数据无价。

归档常用操作

查看当前数据库归档模式

su - oracle #切换到oracle用户
sqlplus /nolog
conn /as sysdba;
select log_mode from v$database;
ORA-00257归档程序错误

开启归档模式

shutdown immediate; #关闭数据库
startup mount; #启动数据库到mount状态
alter database archivelog#修改数据库到归档模式
alter database open#启动数据库
archive log list; #查看归档配置

解决ORA-00257问题

项目上面ORA-00257归档程序错误,为归档空间不足。解决办法:

1、删除多余的归档日志

2、增大归档日志的容量

3、关闭归档模式

删除多于归档日志

1、查看当前使用archivelog使用的百分比。

set linesize 200;
select * from V$FLASH_RECOVERY_AREA_USAGE;

ORA-00257归档程序错误2、查看当前归档日志所在目录 当前归档日志文件在/home/oracle/fast_recovery_area/AODB/archivelog/目录下

show parameter recovery;

ORA-00257归档程序错误3、在此目录下根据日期删除过久的归档日志 4、使用rman维护控制文件

rman target <管理员用户>/<管理员密码>
crosscheck archivelog all; #检查错误文档
delete expired archivelog all#删除过期文档

修改归档日志存储大小跟容量

show parameter db_recover;
alter system set db_recovery_file_dest_size=2000scope=spfile
ORA-00257归档程序错误

关闭归档模式

    如果不是生产系统而是测试环境,可以关闭归档模式

shutdown immediate; #关闭数据库
startup mount; #启动数据库到mount状态
alter database noarchivelog#修改数据库到归档模式
alter database open#启动数据库
archive log list; #查看归档配置

项目真实造成归档满原因

    实际项目提供的归档大小为1T按照目前项目量没有这么大的日志。在线上归档日志1T一天就打满了。

    联想到最近对程序升级过,部分软件模块中可能存在频繁的DML操作。

    通过记录了几个小时的AWR日志,下载下来查看程序中存在不正常的SQL更新语句,造成了频繁的更新产生了大量的日志,修复了此SQL问题,解决了该问题。


原文始发于微信公众号(编程异次元):ORA-00257归档程序错误

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/235131.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!