`
happyqing
  • 浏览: 3205016 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ORA-00257 解决办法,使用RMAN删除归档日志

阅读更多

 

删除7天前的归档日志

[root@rac3 ~]# su - oracle
[oracle@rac3 ~]$ rman target /

Recovery Manager: Release 11.2.0.3.0 - Production on Fri May 2 13:38:06 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: HH (DBID=2971317483)

RMAN> delete archivelog all completed before 'sysdate-7';

 

使用这种方法删除归档日志比较慢,他是一个一个删,1年的得删半个小时到一个小时。

估计在文件系统上按目录删除会快点,再清理。

 

----------------------------------------------------------------------------------------

我的参考:

sqlplus /nolog

connect / as sysdba

 

(2)查看数据库REDOLOG情况

select * from v$log;


(4)查看Oracle数据库后台归档服务进程

[oracle@hrmsdb ~]$ ps -ef|grep oracle

find -name flash_recovery_area

 

(6)查看FLASH_RECOVERY_AREA空间中各部分使用情况

SQL> select * from v$recovery_file_dest;

(7)SQL>select * from v$flash_recovery_area_usage;

发现ARCHIVELOG PERCENT_SPACE_USED已超过90%;

 


1.进入rman
p630_1#oracle> rman


2.连接到目标数据库
RMAN> connect target /;

3.查看所有日志情况
RMAN> list archivelog all;

4.检测归档日志

RMAN> crosscheck archivelog all;


5.删除过期的归档日志
RMAN> delete expired archivelog all;


以下命令备份日志,并删除一周前的所有日志:

BACKUP ARCHIVELOG ALL;

delete archivelog all completed before 'sysdate-7';

 

-----------------------------------------------------------------------------------------

 

参考:

ORA-00257 解决办法

http://pimg2005.blog.51cto.com/842469/857879/

ORA-00257报错解决办法

http://blog.csdn.net/bullettrain1433/article/details/20903473

如何删除Archivelog  

http://www.blogjava.net/decode360/archive/2009/06/25/287747.html

ASM删除archivelog

http://biancheng.dnbcw.info/oracle/237372.html

 

-------------------------------------------------------------------------------------

 

ASM Automatic Storage Management 自动存储管理,他是一个单独的实例,有自己的SID,有自己的文件

 

查看ASM的SID,+ASM1就是他的SID

[oracle@rac3 ~]$ cat /etc/oratab
+ASM1:/u01/app/11.2.0/grid:N  # line added by Agent
rr:/u01/app/oracle/product/11.2.0/db_1:N  # line added by Agent

 

查看asm进程

[oracle@rac3 ~]$ ps -ef|grep asm

 

用grid用户连接到asm

[root@rac3 ~]# su - grid
[grid@rac3 ~]$ sqlplus / as sysasm

SQL*Plus: Release 11.2.0.3.0 Production on Wed Apr 30 13:32:36 2014

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options

SQL> select instance_name,status from v$instance; --查看状态

INSTANCE_NAME  STATUS
---------------- ------------
+ASM1   STARTED

SQL>

在这可以启动停止

 

ASMCMD

[root@rac3 ~]# su - grid                      --grid用户
[grid@rac3 ~]$ asmcmd
ASMCMD> ls
ASM_DATA/
ASM_FRA/
OCR_VOTE/
ASMCMD> cd ASM_FRA

ASMCMD> cd +ASM_FRA/HH/ARCHIVELOG/
ASMCMD> ls
2014_04_26/
2014_04_27/
2014_04_28/
ASMCMD> cd 2014_04_28/
ASMCMD> ls
thread_1_seq_5303.6076.846032419
thread_1_seq_5304.6078.846050457
thread_1_seq_5305.6082.846057975
thread_1_seq_5306.6085.846072425
thread_1_seq_5307.6087.846090029
thread_2_seq_5098.6077.846041781
thread_2_seq_5099.6079.846057963
thread_2_seq_5100.6080.846057969
thread_2_seq_5101.6081.846057973
thread_2_seq_5102.6083.846057975
thread_2_seq_5103.6084.846063413
thread_2_seq_5104.6086.846086451
ASMCMD> help
        
            asmcmd [-V] [-v <errors|warnings|normal|info|debug>] [--privilege <sysasm|sysdba>] [-p] [command]
asmcmd_no_conn_str

        Starts asmcmd or executes the command

        asmcmd [-V] [-v <errors|warnings|normal|info|debug>] [--privilege <sysasm|sysdba>] [-p] [command]

        The environment variables ORACLE_HOME and ORACLE_SID determine the
        instance to which the program connects, and ASMCMD establishes a
        bequeath connection to it, in the same manner as a SQLPLUS / AS
        SYSASM.  The user must be a member of the OSASM group.

        Specifying the -V option prints the asmcmd version number and
        exits immediately.

        Specifying the -v option prints extra information that can help
        advanced users diagnose problems.

        Specify the --privilege option to choose the type of connection. There are
        only two possibilities: connecting as SYSASM or as SYSDBA.
        The default value if this option is unspecified is SYSASM.

        Specifying the -p option allows the current directory to be displayed
        in the command prompt, like so:

        ASMCMD [+DATA/ORCL/CONTROLFILE] >

        [command] specifies one of the following commands, along with its
        parameters.

        Type "help [command]" to get help on a specific ASMCMD command.';

        commands:
        --------

        md_backup, md_restore

        lsattr, setattr

        cd, cp, du, find, help, ls, lsct, lsdg, lsof, mkalias
        mkdir, pwd, rm, rmalias

        chdg, chkdg, dropdg, iostat, lsdsk, lsod, mkdg, mount
        offline, online, rebal, remap, umount

        dsget, dsset, lsop, shutdown, spbackup, spcopy, spget
        spmove, spset, startup

        chtmpl, lstmpl, mktmpl, rmtmpl

        chgrp, chmod, chown, groups, grpmod, lsgrp, lspwusr, lsusr
        mkgrp, mkusr, orapwusr, passwd, rmgrp, rmusr

        volcreate, voldelete, voldisable, volenable, volinfo
        volresize, volset, volstat
ASMCMD> quit          --退出

 

 

分享到:
评论

相关推荐

    ORA-00257错误.doc

    处理 ORA-00257 错误的思路是:删除物理文件和登录 RMAN 释放 archivelog 空间。下面是详细的处理过程: 1. 删除物理文件 首先,我们需要登录到 Oracle 服务器,使用 su 命令切换到 Oracle 用户,然后使用 sqlplus...

    ORA-00257归档日志清理问题

    以下是针对“ORA-00257归档日志清理问题”的详细解决方案和相关知识点: 1. **错误解析**:ORA-00257通常表示数据库尝试写入归档日志文件但找不到可用的空间。这可能是因为归档日志目录已满,或者归档日志文件的...

    oracle 回闪日志 满了 ORA-03113 通信信道结束 进入 rman 删除日志

    解决方案:删除部分归档日志** 如果回闪日志已满,需要清理一部分旧的归档日志文件来释放空间。这可以通过以下步骤实现: - **进入RMAN环境:** ```bash RMAN&gt; connect target / ``` - **列出所有归档日志...

    ORA-03113-ORA-00257处理方法

    当归档日志空间不足时,会引发ORA-03113和ORA-00257错误,前者表示“end-of-file on communication channel”,通常跟数据库实例无法正常关闭有关;后者表示“archiver error”,表明归档进程无法执行其任务,因为...

    Oracle 10g启动后报ORA-16038错误的解决方法

    1. **使用RMAN命令删除过期的归档日志文件**: - 首先连接到目标数据库: ```sql RMAN&gt; connect target / ``` - 使用`crosscheck archivelog all`命令检查所有归档日志文件的状态,以确定哪些文件已过期或不...

    断电与ORA-600问题集

    **解决办法:** 类似于ORA-00600[2662]的处理方法,可以尝试使用`_ALLOW_RESETLOGS_CORRUPTION`参数强制启动,并清空REDOLOG文件。 ##### 1.5.3. REDOlog问题导致ORA-600[kcrfr_update_nab_2] 当REDOlog文件存在...

    数据库ORA-01196故障-归档日志丢失恢复详解

    4. **应用归档日志**:使用`RECOVER DATABASE UNTIL CANCEL`或者`RECOVER MANAGED STANDBY DATABASE UNTIL CANCEL`命令让RMAN自动应用所有缺失的归档日志。 5. **重新同步备库**:在恢复完成后,可能需要使用`ALTER...

    启动oracle数据库报错:ORA-00600

    这会尝试应用归档日志和联机重做日志来使数据库达到一致状态。 3. **继续恢复**: - `RECOVER DATABASE`命令执行完成后,再次尝试`ALTER DATABASE OPEN`。如果RMAN的恢复操作成功,数据库应当能被正常打开,如描述...

    解决Oracle RMAN删除归档日志不释放问题的方法

    本文将探讨Oracle RMAN(Recovery Manager)在删除归档日志时遇到的问题以及解决方案。 首先,Oracle RMAN是Oracle数据库自带的一个强大工具,用于备份、恢复和维护数据库。在同事遇到的问题中,RMAN似乎无法删除旧...

    oracle数据库ORA-01196错误解决办法分享

    5. **使用RMAN**:如果问题涉及归档日志,可能需要使用恢复管理器(RMAN)进行操作。RMAN提供了强大的恢复功能,如`LIST INCOMPLETE RECOVERY`可以列出需要恢复的文件,`RESTORE DATABASE`和`RECOVER DATABASE`可以...

    oracle异常处理归纳.docx

    - 通过RMAN工具(Recovery Manager)删除旧的归档日志。 - 命令示例:`rman target /`,之后输入`crosscheck archivelog all`和`delete noprompt archivelog until time "sysdate-3"`来删除三天前的归档日志。 2....

    oracle数据库归档日志满问题解决方案.docx

    当用户登录时,提示 ORA-00257:archiver error. Connect internal only,直到释放。这个错误信息表明归档日志满,无法写入新的日志。 二、解决方案 1. 使用 sys 用户登录 SQLPlus 首先,需要使用 sys 用户登录 ...

    ORACLE清理归档日志[借鉴].pdf

    当归档日志空间不足时,可能会遇到"ORA-00257: archiver error. Connect internal only, until freed"错误,这表明数据库无法进行正常的归档操作。以下是一些处理此问题和管理Oracle归档日志的详细步骤及知识点: 1...

    数据库异机恢复(RMAN)

    6. 恢复归档日志:如果有归档日志,使用recover database命令,恢复归档日志。 7. 打开数据库:使用alter database open resetlogs命令,打开数据库。 常见错误和解决方法 在恢复数据库的过程中,可能会出现一些...

    基于ORA-19815闪回空间爆满问题的处理方法

    3. **调整策略**:根据错误分析结果,调整RMAN保留策略或归档日志删除策略。 4. **备份或清理**:执行RMAN的备份或删除命令,以释放空间。 5. **增加空间**:如有必要,扩展磁盘并更新参数。 6. **验证结果**:执行...

Global site tag (gtag.js) - Google Analytics