CLEAR   UNARCHIVED   LOGFILE的使用
admin
2023-06-05 04:01:25
0

ALTER DATABASE CLEAR UNARCHIVED LOGFILE的使用


在进入今天主题之前,先来讨论一个v$log动态性能视图的两个字段:
CLEAR   UNARCHIVED   LOGFILE的使用
我们需要注意上图中的两个字段:STATUS和ARCHIVED

    STATUS有3种状态:CURRENT,ACTIVE和INACTIVE;在发生日志切换的时候,会触发数据库执行一次CHECKPOINT,CHECKPOINT会触发DBWn进程将内存中的脏数据写入到硬盘,一旦写入完成,之前的日志组的STATUS就会变成INACTIVE,表示如果此时发生宕机,不再需要改日志组的日志进行实例恢复,反之,需要用到该日志组的日志完成实例恢复;在实际的工作中发现,对于一个”不忙“的数据库,日志组ACTIVE的状态可能持续数小时,如果此时停电或异常关闭,将可能丢失两个日志组的数据;从这点来说,为了数据的安全,日志组成员不应设置的过大,应该有一个“适合”的大小。

    ARCHIVED有两种状态:YES,NO;YES表示ARCH进程已经将该日志组的Online Redo LogFile拷贝到归档目的地,成为一个Archived Redo Logfile,NO表示还没有拷贝完成。日志组的状态和日志组是否归档之间是没有必然的联系,它们分别由不同的进程来控制。在出现故障,需要手动恢复的时候,我们应该注意观察最新的日志组状态及是否归档,这可能帮助到我们的恢复过程,另外,V$LOG的数据来源于控制文件,所以恢复的控制文件或重建的控制文件不能说明数据库最新的日志组状态。

下面通过一个简单的例子来讨论ALTER DATABASE CLEAR UNARCHIVED LOGFILE的使用:
C:\Users\LIUBINGLIN>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on 星期五 1月 4 23:22:26 2013

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


连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area  267825152 bytes
Fixed Size                  1384044 bytes
Variable Size             109052308 bytes
Database Buffers          150994944 bytes
Redo Buffers                6393856 bytes
数据库装载完毕。
SQL> select group#,thread#,sequence#,status from v$log;


    GROUP#    THREAD#  SEQUENCE# STATUS
---------- ---------- ---------- ----------------
         4          1         41 CURRENT
         3          1          0 UNUSED

SQL> alter database clear unarchived logfile group 4;

数据库已更改。

SQL> alter database open;

数据库已更改。

SQL> select group#,thread#,sequence#,status from v$log;

    GROUP#    THREAD#  SEQUENCE# STATUS
---------- ---------- ---------- ----------------
         3          1         42 CURRENT
         4          1          0 UNUSED

SQL> shutdown abort
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area  267825152 bytes
Fixed Size                  1384044 bytes
Variable Size             109052308 bytes
Database Buffers          150994944 bytes
Redo Buffers                6393856 bytes
数据库装载完毕。
SQL> select group#,thread#,sequence#,status from v$log;

    GROUP#    THREAD#  SEQUENCE# STATUS
---------- ---------- ---------- ----------------
         4          1          0 UNUSED
         3          1         42 CURRENT

SQL> alter database clear unarchived logfile group 3;
alter database clear unarchived logfile group 3
*
第 1 行出现错误:
ORA-01624: 日志 3 是紧急恢复实例 orcl (线程 1) 所必需的
ORA-00312: 联机日志 3 线程 1: 'F:\APP\ORACLE\ORADATA\ORCL2\REDO03.LOG'

SQL> alter database open;

数据库已更改。

SQL> select group#,thread#,sequence#,status from v$log;


    GROUP#    THREAD#  SEQUENCE# STATUS
---------- ---------- ---------- ----------------
         3          1         42 INACTIVE
         4          1         43 CURRENT

SQL> alter system switch logfile;

系统已更改。

SQL> shutdown abort
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area  267825152 bytes
Fixed Size                  1384044 bytes
Variable Size             109052308 bytes
Database Buffers          150994944 bytes
Redo Buffers                6393856 bytes
数据库装载完毕。
SQL> select group#,thread#,sequence#,status from v$log;

    GROUP#    THREAD#  SEQUENCE# STATUS
---------- ---------- ---------- ----------------
         4          1         43 ACTIVE
         3          1         44 CURRENT

SQL> alter database clear unarchived logfile group 4;
alter database clear unarchived logfile group 4
*
第 1 行出现错误:
ORA-01624: 日志 4 是紧急恢复实例 orcl (线程 1) 所必需的
ORA-00312: 联机日志 4 线程 1: 'F:\APP\ORACLE\ORADATA\ORCL2\REDO04.LOG'

总结:ALTER DATABASE CLEAR UNARCHIVED LOGFILE只能用于清除正常关闭下的CURRENT状态的日志组。

相关内容

热门资讯

微信官宣功能更新,消息撤回提示... 8月7日,微信宣布功能更新,长按聊天框里的“你撤回了一条消息”即可选择从自己的页面里删除。微信方面提...
原创 企... 引言:AI Agent从概念试点走向规模化落地,企业选型进入关键窗口期 2026年,企业数字化转型正...
力速达取得基于直线轴承的节能型... 国家知识产权局信息显示,江苏力速达液压有限公司取得一项名为“一种基于直线轴承的节能型液压油缸”的专利...
2026年8月热门广东推荐极光... 逛数码配件圈的朋友应该都发现了,最近两年个性化手机膜越来越受欢迎,其中主打正面隐形、侧光显色的光感膜...
伊朗总统最新发声:我不会辞职 据凤凰卫视报道,伊朗总统佩泽希齐扬8月7日接受国家电视台专访,首次回应了辞职传闻。他说:“我从未做过...
荣耀手机数据丢失或损坏 如果荣耀手机的数据丢失或损坏,您可以尝试以下方法来恢复或修复:1.检查备份:如果您之前使用了云备份(...
VIVO X90 Pro充电线... 如果你的 VIVO X90 Pro 充电线或充电器损坏了,以下是一些建议:1. 检查保修:查看设备是...
荣耀X30 Max电池续航时间... 荣耀 X30 Max 电池续航时间短可能由以下原因导致:1. 后台应用过多:关闭不必要的后台应用,减...
电器开关什么牌子的质量好- 最佳回答 根据这个has_none_intro来判断是否有个人简历然后样式不同显示--> 2018-...
德意厨房电器怎么样 最佳回答 你好,这位网友,德意厨房电器的质量是非常好的,德意厨房电器在东南亚,中东甚至欧美地区都有很...