zoukankan      html  css  js  c++  java
  • archive log full ora-00257

    ############# sample 0

    asmcmd show free 37G in archive_log


    ASMCMD> lsdg
    State Type Rebal Unbal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name
    MOUNTED EXTERN N N 512 4096 1048576 204800 37410 0 57410 0 ARCHIVE_LOG/

    check asm usage:

    ort ORACLE_SID=+ASM1
    ARCHIVE_LOG/
    -------------------------
    set linesize 240

    col g_n format 999
    col f_n format 9999
    col bytes format 999,999,999,999
    col space format 999,999,999,999
    col a_i format 999
    col blocks format 999,999
    col block_size format 999,999
    col ftype format a16
    col dir format a3
    col s_created format a10
    col full_alias_path format a60
    col striped format a6
    col rdun format a6
    col au format 99999999
    col calculated format 999,999,999,999

    select x.gnum g_n,
    x.filnum f_n,
    substr(x.full_alias_path,1, 60) full_alias_path,
    f.striped,
    f.redundancy rdun,
    f.bytes,
    f.space,
    case when calculated / x.au > 60 then calculated + 3 * x.au -- Over 60 direct extents consideration
    else calculated
    end calculated
    from ( SELECT gnum,filnum,au, concat('+'||gname, sys_connect_by_path(aname, '/')) full_alias_path
    from ( SELECT g.name gname,
    g.allocation_unit_size au,
    a.parent_index pindex,
    a.name aname,
    a.reference_index rindex,
    a.group_number gnum,
    a.file_number filnum
    FROM v$asm_alias a, v$asm_diskgroup g
    WHERE a.group_number = g.group_number)
    START WITH (mod(pindex, power(2, 24))) = 0 CONNECT BY PRIOR rindex = pindex) x,
    (select f.group_number gnum,
    f.file_number filnum,
    f.type ftype ,
    f.bytes,
    f.space,
    f.blocks,
    f.block_size,
    f.striped,
    f.redundancy,
    case f.striped when 'FINE'
    then ceil(((f.blocks * f.block_size + 1) / g.allocation_unit_size) / 8)
    * decode(f.redundancy, 'HIGH', 3 , 'MIRROR', 2, 'UNPROT', 1 ) * 8 * g.allocation_unit_size
    else ceil((f.blocks * f.block_size + 1) / g.allocation_unit_size)
    * decode(f.redundancy, 'HIGH', 3 , 'MIRROR', 2, 'UNPROT', 1 ) * g.allocation_unit_size
    end calculated
    from v$asm_file f , v$asm_diskgroup g
    where f.group_number = g.group_number
    and g.name='ARCHIVE_LOG'
    order by f.group_number,file_number) f
    where x.filnum != 4294967295
    and x.gnum=f.gnum and x.filnum=f.filnum
    order by full_alias_path
    /


    sulution:
    catalog start with "+archive_log/RCFRONT/ARCHIVELOG"
    crosscheck archivelog all;
    delete archivelog until time 'sysdate -30';

    ############

     1.


    C:UsersAdministrator>rman target  "sys/test123@test"
    Recovery Manager: Release 11.2.0.4.0 - Production on Fri Mar 3 11:26:55 2017
    Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
    connected to target database: IVRSPROD (DBID=3799003095)
    RMAN>
    RMAN>
    RMAN> exit

    crosscheck archivelog all;
    delete noprompt expired archivelog all;
    delete noprompt obsolete recovery window of 7 days;
    delete noprompt archivelog until time 'sysdate - 7';


    Recovery Manager complete.

    2.

    Wed Sep 06 15:13:42 2017
    ARCH: Archival stopped, error occurred. Will continue retrying
    ORACLE Instance edruat - Archival Error
    ORA-16014: log 2 sequence# 14 not archived, no available destinations
    ORA-00312: online log 2 thread 1: '/edruatdb/data/log2a.rdo'
    ORA-00312: online log 2 thread 1: '/edruatdb/data/log2b.rdo'
    Wed Sep 06 15:17:27 2017
    Incremental checkpoint up to RBA [0x13.62847.0], current log tail at RBA [0x13.62847.0]

    SQL> alter system switch logfile;

    System altered.

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

    3.

    碰到一个问题specification does not match any foreign archived log in the repository

    原因如下:

    因为控制文件最多存储100个归档日志,如果之前,没有部署好清理归档的任务的话,导致旧的归档日志无法被删除.比如2个月之前的归档日志就无法被删除.这样导致目录消耗过大.

    检查方法:

    list archivelog 'D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAV10203ARCHIVELOG2007_11_13O1_MF_1_6_3MM4NR1W_.ARC';


    list archivelog all;

     

    详细查看RMAN-20242 failure at RMAN Backup Archivelog - possible Cause and Solution (文档 ID 1634498.1)

    解决方法

    方法1:

    脚本里加入

    catalog  start with 'C:APPORACLEARCHIVELOG' noprompt ;

    方法2:

    及时备份脚本,定时任务清理归档.

    1/ windows(如果没有使用管理员用户创建定时任务,那么需要在 定时任务 属性里,选择 安全选项,选择最高权限 执行 ),确保定时任务可以在windows 下正常运行。

    2.建议使用administrator 创建定时任务,创建数据库,分c,d 盘。

    sapmle : 

    [oracle@db 2018_01_08]$ crontab -l
    * 12 * * * sh /tmp/cron/delete_archive.sh > /tmp/cron/delete_archive.log


    more /tmp/cron/delete_archive.sh

    #!/bin/bash
    source /home/oracle/profile_vats
    rman target / <<eof
    crosscheck archivelog all;
    delete noprompt archivelog all;
    eof


    chmod 777 /tmp/cron/delete_archive.sh

  • 相关阅读:
    进程间通信-管道,消息,共享内存,信号量,信号,scoket
    高并发架构相关概念
    在WSL2中 安装 .NET Core SDK 进行Linux 开发工作
    OKR专题
    logback是怎么知道java代码的行数的?
    IDEA plugins
    [LeetCode] 956. Tallest Billboard 最高的广告牌
    上周热点回顾(8.10-8.16)团队
    【故障公告】腾讯云短信服务故障造成无法发送手机短信团队
    HBase~hbase-shaded-client解决包冲突问题
  • 原文地址:https://www.cnblogs.com/feiyun8616/p/6495607.html
Copyright © 2011-2022 走看看