精华内容
下载资源
问答
  • 1该日子文件所在的日志文件组不能处于current状态,需要执行手动切换日志组状态,将日志文件组的状态修改为inactive 2.日志文件所在的日志文件组必须包含其他日志成员 3如果数据库运行在归档模式下,应该在删除...

    删除日志文件
    语法
    alter database drop logfile member logfileName;
    注意:
    1该日子文件所在的日志文件组不能处于current状态,需要执行手动切换日志组状态,将日志文件组的状态修改为inactive
    2.日志文件所在的日志文件组必须包含其他日志成员
    3如果数据库运行在归档模式下,应该在删除日志文件前确定所在的日志文件组已经被归档,否则会导致数据丢失

    这里写图片描述
    注意:
    在物理上文件’F:\test\redo9.log’ 是没有被删除的
    只是在数据字典与控制文件中进行删除。

    日志文件组状态
    active:活动状态
    current:当前正在使用
    inactive:非活动状态
    unused:日志文件组没有被使用过

    日志文件状态
    valid:日志文件可以使用,就标记valid
    invalid:日文文件不可使用,就标记invalid
    stale:日志文件产生错误,就标记stale

    删除日志文件组

    alter database drop logfile group groupNumber;
    注意:
    1数据库至少需要2个日志文件组
    2日志文件组不能处于current状态
    3如果数据库运行在规定模式下,应该确定日志文件组已经被归档.

    这里写图片描述

    注意:
    在物理上,日志文件组的日志文件 是没有被删除的
    只是在数据字典与控制文件中进行删除。

    展开全文
  • 1)Oracle重做日志前请先【查询】日志文件组的状态  正在被LGWR后台写入的重做日志文件处于,'当前状态'(CURRENT);--------必须手动切换日志示例如下  ALTER system SWITCH logfile...----【查看日志文件状态】 ...

    1)Oracle重做日志前请先【查询】日志文件组的状态

         正在被LGWR后台写入的重做日志文件处于,'当前状态'(CURRENT);--------必须手动切换日志示例如下

          ALTER system SWITCH logfile;  ----------【随即切换】

          SELECT group#,status FROM V$log;----【查看日志文件状态】

          正在被实例用于数据库恢复的重做日志文件处于,'活动状态'(ACTIVE);

         其他的重做日志文件处于,'未活动状态'(INACTIVE); -----------------------------只有处于INACTIVE状态可以删除。

    【示例如下】

    SELECT group#,status FROM V$log;

    ============================================================================

    2)Oracle【增加日志文件组成员】示例如下

    ALTER database ADD logfile member group 5           修改数据库,添加一个新的重做日志组成员文件 通过group指定编号是5;

    ('D:\path\REDO4_A.LOG' , 'E:\path\REDO4_B.LOG')   分别存放于两个磁盘为数据安全考虑

    SIZE 20M;

    ===========================================================================

    3)删除重做日志文件

    SELECT group#,status FROM V$log;----【查看日志文件状态】

    ALTER system SWITCH logfile;  ----------【随即切换】

    【示例如下】

    ALTER database DROP logfile group 5;-----更改数据库,删除重做日志组编号为5的文件;

    展开全文
  • --当损坏日志文件状态非INACTIVE时,数据库打不开, S1. startup mount ; S2. SQL> alter database drop logfile group 4; S3. alter database open; --增加联机日志文件 SQL> alter database add logfile group 4 ...
    --6-3 RMAN不完全恢复
    select * from dba_tables where tablespace_name='USERS';
    select * from dba_tablespaces;
    select * from sys.t
    
    --误删除一张表,恢复到表存在的时刻
    --用scn恢复到特定的时刻
    S1.SQL:startup mount;
    S2.RMAN> restore database;
    S3.SQL> recover database until change 1914122; 
    S4.SQL:alter database open resetlogs;
    
    SQL> select current_scn from v$database;
    CURRENT_SCN
    -----------
        1914122
    
    drop table sys.t
    create table t2 (int id) ;
    insert into t2 values(1);
    
    startup mount;
    RMAN> restore database;
    
    SQL> select file#,checkpoint_change# from v$datafile;
    
         FILE# CHECKPOINT_CHANGE#
    ---------- ------------------
             1            1915802
             2            1915802
             3            1915802
             4            1915802
             5            1915802
             6            1915802
             7            1915802
             8            1915802
             9            1915802
            10            1915802
            11            1915802
    
    已选择11行。
    
    SQL> select file#,checkpoint_change# from v$datafile_header;
    
         FILE# CHECKPOINT_CHANGE#
    ---------- ------------------
             1            1912654
             2            1912654
             3            1912654
             4            1912654
             5            1912654
             6            1912654
             7            1912654
             8            1912654
             9            1912654
            10            1912654
            11            1912654
    
    SQL> recovery database until change 1914122;     --sql下关键字是change,在rman下是scn,因为change是rman中的一条命令
    
    select sequence#,first_change#,next_change# from v$archived_log where first_change#<1914122 and next_change#>1914122;
    
    --控制文件损坏
    select * from v$logfile;
    1	1		ONLINE	C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TEST\ONLINELOG\O1_MF_1_954OTLCM_.LOG	YES
    2	2		ONLINE	C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TEST\ONLINELOG\O1_MF_2_954QNYS9_.LOG	YES
    3	4		ONLINE	C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TEST\ONLINELOG\O1_MF_4_954OZ7PV_.LOG	YES
    4	3		ONLINE	C:\ORADATA\TEST\AUTOLOG\REDO03.LOG	NO
    
    SQL> recover database until change 1914122; -- until time ,untill sequence
    
    
    SQL> select * from v$log;
    
        GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIME
    ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- --------------
             1          1          2  104857600          1 NO  CURRENT                1918102 27-10月-13
             4          1          1  104857600          1 YES INACTIVE               1916959 27-10月-13
             3          1          0   52428800          1 YES UNUSED                       0
             2          1          0  104857600          1 YES UNUSED                       0
    
    --当损坏日志文件状态非INACTIVE时,数据库打不开,
    S1. startup mount ;
    S2. SQL> alter database drop logfile group 4;
    S3. alter database open;
    
    --增加联机日志文件
    SQL> alter database add logfile group 4 'C:\oradata\test\redo04.log' size 50m;--建议每个日志大小都相同
    
    --修改所有联机日志大小同义10M
    SQL> alter database add logfile 'C:\oradata\test\redo04.log' size 50m;
    SQL> alter database add logfile 'C:\oradata\test\redo05.log' size 50m;
    SQL> alter database add logfile 'C:\oradata\test\redo06.log' size 50m;
    SQL> alter system switch logfile;
    SQL> alter system switch logfile;
    SQL> alter system switch logfile;
    SQL> select * from v$log;
    SQL> alter system checkpoint;
    SQL> alter database drop logfile group 1;
    

    展开全文
  • 查看日志文件状态信息 select group#,status from v$log; inactive:非活动状态 current:当前正在被使用 active:活动的非当前日志,该日志可能已经完成归档,也可能没有归档,活动的日志文件在crash恢复时会...

    查看日志文件组状态信息
    select group#,status from v$log;
    这里写图片描述

    inactive:非活动状态
    current:当前正在被使用
    active:活动的非当前日志,该日志可能已经完成归档,也可能没有归档,活动的日志文件在crash恢复时会被用到
    unused:日志从未被使用
    上图表名数据库正在使用日志文件组3

    切换日志文件组
    1日志文件组是可以循环使用的
    2当一个日志文件组写满了,oracle自动切换下一个日志文件组

    手动切换日志文件组
    语法
    alter system switch logfile;
    这里写图片描述
    清空日志文件组
    1如果日志文件组的日志文件受损,导致数据库无法将受损的日志文件进行归档,引起数据库停在运行,这个时候我们可以在不关闭数据库的情况下,清空日志文件组的内容

    语法
    alter database clear logfile group groupNumber;
    注意:
    1被清空的日志文件组不能处于current状态,current状态就是说日志文件正在被数据库使用的状态。简短点就是说正在被数据库使用的日志文件组不能被清空.
    2当数据库只有2个日志文件组时,不能清空日志文件组.
    因为只有一个日志文件组的时候,当这个唯一的日志文件组,出现错误的时候,没法再切换到别的日志文件组中。

    这里写图片描述

    查询清空的日志文件组信息
    select group#,member from v$logfile;
    这里写图片描述
    说明清空不是删除对应的日志文件
    实际上:清空只是对这些日志文件做初始化操作

    展开全文
  • 提示:在MySQL数据目录中还包含着许多状态文件和日志文件,这些文件的文件名都是以主机名加上相关后缀来命名的。在MySQL数据目录中还包含着许多状态文件和日志文件,这些文件的文件名都是以主机名加上相关后缀来命名...
  • 查看日志文件状态信息 select group#,status from v$log; inactive:非活动状态 current:当前正在被使用 active:活动的非当前日志,该日志可能已经完成归档,也可能没有归档,活动的日志文件在crash恢复时...
  • 当INACTIVE 状态的在线重做日志失效时(硬件损坏或文件被删),如何...请看全文下面是在重起数据库时,发现一组日志文件找不到了,此日志文件状态为INACTIVE,这种情况恢复数据库很方便,只需要下面运行一句话:AL...
  • oracle 日志文件组六种状态

    千次阅读 2015-11-23 16:07:45
    日志文件组的状态一般有INACTIVE、ACTIVE、CURRENT、UNUSED、CLEARING、CLEARING_CURRNT等六种状态: v$log 保存控制文件中的日志文件信息。 SQL> SELECT STATUS FROM V$LOG; UNUSED : 表示该联机重做日志文件组...
  • 重做日志文件和重做日志组的状态[@more@]一、日志文件状态包括:1、NULL -File is in use2、STALE-contents of the file are incomplete3、INVALID-File...
  • MySQL Server会将信息写入几种类型的日志文件中。日志会记录下与被Server处理的SQL语句相关的各种信息:通用查询日志(general query log)记录了所有从客户端收到的语句。二进制日志(binary log)记录了对数据进行了...
  • 日志文件3种状态

    千次阅读 2014-10-18 20:21:48
    以下内容是我从自己的测试环境中查询出来的在线重做日志信息: SQL> select* from v$log;  GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM ---------- -------------------- --...
  • ACTIVE:表示重做日志组记录的改变还没有被写到数据文件中,实例恢复时需要用到状态为ACTIVE的重做日志组。 INACTIVE:表示实例恢复时不需要状态为INACTIVE的重做日志组。 UNUSED:表示该重做日志组是新建的,还未被...
  • ACTIVE状态的在线重做日志文件是在实例失效后重起恢复时所需要日志文件。如果它失效时,数据库如何恢复呢? 下面的例子中在线日志组1文件在数据库关闭后,被误删除。起动数据库时发现没有此日志文件组。恢复步骤见下...
  • 联机重做日志文件组的状态介绍

    千次阅读 2012-08-10 10:27:58
    可通过视图v$log来查询联机重做日志文件组的状态(STATUS)。 UNUSED:表示该联机重做日志文件组对应的文件还从未被写入过数据,通常刚创建的和重建的联机重做日志文件组会显示为这一状态。 CURRENT:表示当前ORACLE...
  • 可以通过v$log视图来查看日志文件状态状态有以下几种:current/active/inactive/unused current:当前的日志文件,该日志文件是活动的,当前正在被使用的,在进行崩溃恢复时,current日志文件是必须的 ...
  • 二进制日志文件用于保存节点自身产生的事件,中继日志文件中则是保存接收自其他节点的事件(也是二进制格式),中继日志文件默认保存在data目录下。Slave节点有两个线程,其中IO_THREAD线程用于接收和保存二进制日志,...
  • stack Dump 日志文件中的线程状态 dump 文件里,值得关注的线程状态有: 死锁,Deadlock(重点关注) 执行中,Runnable  等待资源,Waiting on condition(重点关注) 等待获取监视器,Waiting on ...
  • 今天因为项目中遇到jstack问题,但是...-------------------------------------jstack Dump 日志文件中的线程状态------------------------------------------- dump 文件里,值得关注的线程状态有: 死锁,D
  • 处于current状态日志文件组是不能够删除的,除非先进行强制日志切换alter system switch logfile;.SQL> select group#,archived,status2 from V$log;GROUP# ARC STATUS---------- --- --------------...
  • 三种日志文件状态处理方法 UNUSED INACTIVE --> alter database clear logfile group ACTIVE --> alter system checkpoint; --> alter database clear logfile group CURRENT -->alter system switch log...
  • 删除日志文件组与日志文件成员删除日志文件组前,先查看系统中日志文件组的信息。处于current状态日志文件组是不能够删除的,除非先进行强制日志切换alter system switch logfile;.SQL> sel...
  • oracle添加日志文件状态为invalid

    千次阅读 2013-10-30 13:24:19
    在Oracle数据库中,三大文件(Data File、Control File和Online Redo Log)扮演着极其重要的地位和作用。其中,Redo Log和Oracle Redo Log机制更是Oracle正常、安全运行的保证。   Oracle Online Red
  • #通过分析两次的扫描日志,来分析文件的,增,删,改的记录,把分析的结果...import string,osdef GetList(file):#把日志文件转换为list #第一字典存放文件名后修改时间 dict = {} fd = open(file,r) while 1: 

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,664
精华内容 2,665
关键字:

日志文件状态