1、查询数据库中的重做日志组

  SQL> select * from v$log;

  GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME

  1 1 64 52428800 512 1 NO CURRENT 1522229 17-MAY-19 2.8147E+14

  2 1 62 52428800 512 1 NO INACTIVE 1502072 16-MAY-19 1515210 17-MAY-19

  3 1 63 52428800 512 1 NO INACTIVE 1515210 17-MAY-19 1522229 17-MAY-19

  2、具体查看日志文件详情(位置)

  SQL> select * from v$logfile;

  GROUP# STATUS TYPE MEMBER IS_RECOVERY_DEST_FILE

  3 ONLINE /u01/app/oraData/orcl/redo03.log NO

  2 ONLINE /u01/app/oraData/orcl/redo02.log NO

  1 ONLINE /u01/app/oraData/orcl/redo01.log NO

  3、创建重做日志组

  SQL> alter database add logfile ('/u01/app/oraData/orcl/hbk01.rdo','/u01/app/oraData/orcl/hbk02.rdo') size 5M;

  Database altered.

  SQL> select * from v$logfile;

  GROUP# STATUS TYPE MEMBER IS_RECOVERY_DEST_FILE

  3 ONLINE /u01/app/oraData/orcl/redo03.log NO

  2 ONLINE /u01/app/oraData/orcl/redo02.log NO

  1 ONLINE /u01/app/oraData/orcl/redo01.log NO

  4 ONLINE /u01/app/oraData/orcl/hbk01.rdo NO

  4 ONLINE /u01/app/oraData/orcl/hbk02.rdo NO

  可以看到多了两个重做日志文件hbk01.rdo,hbk02.rdo,组的编号为4,查询v$log可以知道4号组的status为UNUSED,表示新建状态,未使用。

  SQL> select * from v$log;

  GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME

  1 1 64 52428800 512 1 NO CURRENT 1522229 17-MAY-19 2.8147E+14

  2 1 62 52428800 512 1 NO INACTIVE 1502072 16-MAY-19 1515210 17-MAY-19

  3 1 63 52428800 512 1 NO INACTIVE 1515210 17-MAY-19 1522229 17-MAY-19

  4 1 0 5242880 512 2 YES UNUSED 0 0

  可以看出我们创建重做日志组的编号默认系统产生

  我们也可以知道组编号

  SQL> alter database add logfile group 8 ('/u01/app/oraData/orcl/hbk10.rdo') size 5M;

  Database altered.

  SQL> select * from v$logfile;

  GROUP# STATUS TYPE MEMBER IS_RECOVERY_DEST_FILE

  4、删除重做日志组

  删除重做日志组只是更新了控制文件,被删除的组所拥有的重做日志文件并没有从操作系统中删除,需要手工删除,而且只能删除状态是INAVTIVE的重做日志组,如果想删除当前(CURRENT)的重做日志组,必须手工切换,可以使用alter system switch logfile,而且每个数据库至少需要有两组重做日志组,因为要循环使用。

  删除之前先查询下

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

  GROUP# STATUS

  1 CURRENT

  2 INACTIVE

  3 INACTIVE

  4 UNUSED

  8 UNUSED

  像组2和组3都可以删,而组1为当前使用,不能删,除非切换使用日志组。删除之前先记下文件位置,方便手动执行操作系统rm删除命令

  alter database drop logfile group 2;

  5、删除日志成员

  需要注意的是,一个日志组中至少需要保留一个成员,而且只能删除状态不是ONLINE或CURRENT的日志成员。

  SQL> select * from v$logfile;无锡正规妇科 http://www.xasgyy.net/

  GROUP# STATUS TYPE MEMBER IS_RECOVERY_DEST_FILE

  SQL> alter database drop logfile member '/u01/app/oraData/orcl/hbk10.rdo';

  alter database drop logfile member '/u01/app/oraData/orcl/hbk10.rdo'

  ERROR at line 1:

  ORA-00362: member is required to form a valid logfile in group 8

  ORA-01517: log member: '/u01/app/oraData/orcl/hbk10.rdo'

  SQL> alter database drop logfile member '/u01/app/oraData/orcl/hbk8.rdo';

  Database altered.

  7、查看重做日志是否归档

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

  GROUP# STATUS ARC

  1 INACTIVE NO

  2 INACTIVE NO

  3 INACTIVE NO

  4 INACTIVE NO

  8 CURRENT NO

  NO表示未归档,YES表示已归档。

  因为我的没有开启归档模式,所以都显示NO

  SQL> select name,log_mode from v$database;

  NAME LOG_MODE

  ORCL NOARCHIVELOG

oracle如何重做日志组的更多相关文章

  1. 【Oracle】恢复重做日志组

    我们在Oracle的日常运维中,有可能会遇到重做日志组丢失的情况.下面我将模拟丢失不同状态的日志组,并分别给出解决办法: 重做日志有以下几种状态,如下: -  CURRENT:此状态表示正在被 LGW ...

  2. Oracle RACDB 增加、删除 在线重做日志组

    Oracle RACDB 增加.删除 在线重做日志组 select * from v$log;select * from v$logfile ; ----删除日志组:alter database dr ...

  3. Oracle丢失重做日志的几种场景恢复

    实验环境:RHEL6.4 + Oracle 11.2.0.4 一.丢失重做日志组中成员 1.1 故障模拟 1.2 处理方法 1.3 实际处理过程 二.丢失重做日志组 2.1 丢失INACTIVE重做日 ...

  4. Oracle数据库重做日志及归档日志的工作原理说明

    Oracle数据库重做日志及归档日志的工作原理: lgwr进程将redo log buffer中的重做数据写入到redo log中,此时的redo log分组,每当一个redo log group写满 ...

  5. Oracle 联机重做日志文件(ONLINE LOG FILE)

    --========================================= -- Oracle 联机重做日志文件(ONLINE LOG FILE) --================== ...

  6. oracle redo 重做日志文件

    以下易容翻译自oracle dba官方文档,不足之处还望指出. 管理重做日志文件 学习目标:1.解释重做日志文件的目的2.描述重做日志文件的结构3.学会控制日志切换与检查点4.多元化管理重做日志文件5 ...

  7. 数据库实例: STOREBOOK > 数据文件/退回字段/重做日志组|管理员

    ylbtech-Oracle:数据库实例: STOREBOOK  > 数据文件/退回字段/重做日志组|管理员 数据文件/退回字段/重做日志组|管理员 1. 数据库实例: STOREBOOK  & ...

  8. ORACLE - 管理重做日志文件

    ORACLE重做日志文件用于在数据库崩溃等情况下用于恢复数据,默认情况下为三个文件redo01.log/redo02.log/redo03.log,文件组循环使用,在录入与更新操作比较多的应用中,日志 ...

  9. 【REDO】删除REDO LOG重做日志组后需要手工删除对应的日志文件(转)

    为保证重新创建的日志组成员可以成功创建,我们在删除日志组后需要手工删除对应的日志文件. 1.查看数据库当前REDO LOG日志相关信息1)查看日志组信息sys@ora10g> select * ...

随机推荐

  1. 我人生中的第一场Java面试

    1.说起我的第一次Java面试,我不禁回想起我大学时参加校园招聘的那段日子,那时候我还是本科生,由于不是科班出身,只学过一点点Java皮毛,所以那时候对于找Java工作并没有什么概念,只是以为上过Ja ...

  2. 51Nod 1095 Anigram单词

    熟练使用map即可,不然用vector会超时 #include <iostream> #include <cstring> #include <string> #i ...

  3. 题解报告:hihoCoder #1050 : 树中的最长路

    描述 上回说到,小Ho得到了一棵二叉树玩具,这个玩具是由小球和木棍连接起来的,而在拆拼它的过程中,小Ho发现他不仅仅可以拼凑成一棵二叉树!还可以拼凑成一棵多叉树——好吧,其实就是更为平常的树而已. 但 ...

  4. magento性能分析插件

    两个好用的插件: http://connect20.magentocommerce.com/community/MagnetoDebughttp://connect20.magentocommerce ...

  5. 18.3.1获得Class对象

    package d18_3_1; /** * Java中的java.lang.Class,简单理解就是为每个java对象的类型标识的类, * 虚拟机使用运行时类型信息选择正确的执行方法,用来保存这些运 ...

  6. Spark-SQL连接Hive

    第一步:修个Hive的配置文件hive-site.xml 添加如下属性,取消本地元数据服务: <property> <name>hive.metastore.local< ...

  7. P1482 Cantor表(升级版)

    题目描述 现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的.他是用下面这一张表来证明这一命题的: 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … ...

  8. C#: static关键字的作用(转)

    C#: static关键字的作用   static意思是静态,可以修饰类.字段.属性.方法 标记为static的就不用创建实例对象调用了,可以通过类名直接点出来 static三种用法: 1.用于变量前 ...

  9. new几种用法

    在 C# 中,new 关键字可用作运算符.修饰符或约束. new 运算符 用于创建对象和调用构造函数. new 修饰符 用于向基类成员隐藏继承成员. new 约束 用于在泛型声明中约束可能用作类型参数 ...

  10. 014、BOM与DOM对象的应用

    Screen屏幕对象 Width:屏幕的宽度 Height:屏幕的高度 availWidth:屏幕的有效宽度(不含任务栏) availHeight:屏幕的有效高度(不含任务栏) colorDepth: ...