Oracle归档日志写满(ora-00257)了怎么办_oracle

oracle数据库报错ORA-00257: archiver error. Connect internal only, until freed ,如何解决呢?此问题定位在归档日志满了,下面把具体解决办法总结分享给大家。

解决办法:

SQL> select * from V$FLASH_RECOVERY_AREA_USAGE; --查看归档内容使用情况
FILE_TYPE    PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE                   0                         0               0
ONLINELOG                     0                         0               0
ARCHIVELOG                  99.9                         0               255
BACKUPPIECE                   0                         0               0
IMAGECOPY                     0                         0               0
FLASHBACKLOG                  0                         0               0

注:可以看出,ARCHIVELOG日志已经达到99.9%了。要把它清除掉!

SQL> quit

C:\Documents and Settings\Administrator>rman

RMAN> connect target system/myoracle@orcl

注:system为oracle用户,myoracle为oracle用户密码,orcl为连接的数据库名称SID。

RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;

注:删除过期的归档

这样就把归档文件删除了。再进入sqlplus 查看ARCHIVELOG日志使用率!

第二种方法就是增大闪回日志文件的最大大小。如下:

复制代码 代码如下:

alter system set DB_RECOVERY_FILE_DEST_SIZE=10g

以上处理方法是当遇到出现日志写满报错时的处理,建议最好做个任务,定时删除日志,如下:

DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; //删除七天前的归档
DELETE ARCHIVELOG FROM TIME 'SYSDATE-7'; //删除七天到现在的归档 

以上内容是关于Oracle归档日志写满(ora-00257)了的解决办法,希望大家喜欢。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索oracle_ora_00257
, ora_00257如何解决
oracle归档日志
ora00257归档程序错误、oracle ora 00257、oracle 归档日志、oracle 归档日志满了、oracle 删除归档日志,以便于您获取更多的相关知识。

时间: 2024-12-28 00:01:52

Oracle归档日志写满(ora-00257)了怎么办_oracle的相关文章

查看oracle归档日志路径1

查看oracle归档日志路径 1.修改归档日志的格式 默认格式是:" %t_%s_%r.dbf",我们尝试将格式修改为"%t_%s_%r.arch",这是一个静态参数,需要重新启动数据库才生效.sys@ora10g> show parameter log_archive_format NAME                  TYPE        VALUE--------------------- ----------- ----------------

Oracle 归档日志

--==================== -- Oracle 归档日志 --====================       Oracle可以将联机日志文件保存到多个不同的位置,将联机日志转换为归档日志的过程称之为归档.相应的日志被称为归档日志.   一.归档日志     是联机重做日志组文件的一个副本     包含redo记录以及一个唯一的log sequence number     对日志组中的一个日志文件进行归档,如果该组其中一个损坏,则另一个可用的日志将会被归档     对于归

查看oracle归档日志路径2

在Oracle中,数据一般是存放在数据文件中,不过数据库与Oracle最大的区别之一就是数据库可以在数据出错的时候进行恢复. 这个也就是我们常见的Oracle中的重做日志(REDO FILE)的功能了.在重做日志分成2部分,一个是在线重做日志文件,另外一个就是归档日志文件.      这里不详细说明在线重做日志,而是说一下归档日志(Archive Log).在线重做日志大小毕竟是有限的,当都写满了的时候,就面临着2个选择,第一个就是把以前在线重做日志从头擦除开始继续写,第二种就是把以前的在线重做

Linux下Oracle归档日志自动清理脚本代码(sh)_linux shell

复制代码 代码如下: #!/bin/sh export BACK_DATE=`date +%Y%m%d` export BACKUP_PATH=/home/oracle/dbbak echo `mkdir -p ${BACKUP_PATH}/archivelog/${BACK_DATE}` rman msglog=$BACKUP_PATH/archivelog/${BACK_DATE}/arch_0_$BACK_DATE.log << EOF connect target /; delete

Oracle RMAN 清除归档日志

      在开发环境及UAT环境经常碰到需要清除归档日志的情形,对于这个问题方法有很多.可以直接使用rm方式清除归档日志,也可以使用find命令来查找符合条件的记录来清除归档日志,或者直接写个shell脚本来搞定.这样在DEV或者UAT还可以,但是在Prod环境还是建议使用RMAN提供的命令来搞定比较妥当.因为rm,find方式删除了实际的归档日志也释放了空间,但对应的存储在控制文件中的归档信息并没有彻底清除.依旧占用着一些空间未能及时清除而需要控制文件通过age out方式来释放空间.本文描

数据库-oracle10数据恢复问题,有原来全备份,有归档日志

问题描述 oracle10数据恢复问题,有原来全备份,有归档日志 背景 1.停电造成数据库启动异常,startup ,提示 system01.dbf 有问题,拷贝整个数据文件是,提示REDO01.LOG,无法复制,其他文件可以,好像是REDO01.LOG,损坏了. 2.用一起3月前备份的数据库,覆盖原来数据文件目录,将原来数据文件夹重命名.然后进行启动,结果还启动了,中间也做了recover datebase 等命令,但是日数据最新前是1月份的. 3.现在情况是有归档日志文件从去年到现在的,有1

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

    使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linux 下使用 shell 脚本来监控 Oracle 告警日志(monitor alter log file).     Linux Shell的相关参考:        Linux/Unix shell 脚本中调用SQL,RMAN脚本        Linux/Unix shell sql 之

delete archivelog all 无法彻底删除归档日志?

    最近在因归档日志暴增,使用delete archivelog all貌似无法清除所有的归档日志,到底是什么原因呢? 1.演示环境 SQL> select * from v$version where rownum<2; BANNER ---------------------------------------------------------------- Oracle Database 10g Release 10.2.0.3.0 - 64bit Production SQL&g

使用外部表管理Oracle 告警日志(ALAERT_$SID.LOG)

--================================================ -- 使用外部表管理Oracle 告警日志(ALAERT_$SID.LOG) --================================================       Oracle 告警日志时DBA维护数据库经常需要关注的一部分内容.然而告警日志以文本文件,按时间的先后顺序不断累积的形式来存储,久而 久之,势必造成告警日志的过大,难于维护和查找相关的信息.使用外表表方式来