目的:在安装完毕11.2.0.4版本Oracle单实例数据库后,对日志进行格式化,删除原日志组current状态,删除报错

#对于理论学习,而带来的理解命令,因此作为记录

#查询日志状态
SYS > select GROUP#,MEMBERS,STATUS from v$log;

GROUP#    MEMBERS STATUS
------ ---------- ----------------

1          2 CURRENT
     2          2 ACTIVE
     3          2 ACTIVE

#查询日志组成员信息

SYS >  select group#,member from v$Logfile where type='ONLINE'

GROUP# MEMBER
------ ------------------------------------------------------
     1 /u01/app/oracle/oradata/ENMO/redo01a.log
     1 /u01/app/oracle/oradata/ENMO/redo01b.log
     3 /u01/app/oracle/oradata/ENMO/redo03a.log
     3 /u01/app/oracle/oradata/ENMO/redo03b.log
     2 /u01/app/oracle/oradata/ENMO/redo02a.log
     2 /u01/app/oracle/oradata/ENMO/redo02b.log

6 rows selected.

#删除 ACTIVE状态日志组,某个成员,可以成功

SYS > alter database drop logfile member '/u01/app/oracle/oradata/ENMO/redo02a.log' ;

Database altered.

#删除ACTIVE状态日志组,整个组删除,失败,提示介质恢复需要使用,无法删除

alter database drop logfile group 2
*
ERROR at line 1:
ORA-01624: log 2 needed for crash recovery of instance ENMO (thread 1)
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/ENMO/redo02b.log'

#如下操作可以改变日志组状态

SYS > alter system checkpoint;

System altered.

SYS > select GROUP#,MEMBERS,STATUS from v$log;

GROUP#    MEMBERS STATUS
------ ---------- ----------------
     1          2 CURRENT
     2          1 INACTIVE
     3          2 INACTIVE

#可以删除

SYS > alter database drop logfile group 2;

Database altered.

#理论学习: CURRENT 代表日志组为当前日志组,log_buffer 经过lgwr进程写入此状态的日志组成员中

ACTIVE     在线日志组,代表实例恢复需要使用此日志组,在此日志组记录的日志中,存在脏块数据,也就是数据块的改变信息记录通过lgwr写入了redo logfile,但是被改变的数据块,并未经过dbwr 写入 datafile文件中,因此实例恢复时,需要前滚应用redo logfile 将数据库块的改变信息,重新构建内存数据块。

INACTIVE  离线日志组,代表此日志组中,记录的脏块数据,对应的缓存脏块数据,也已经都被DBWR写入了datafile文件中

#而 alter system checkpoint;命令为 触发CKPT进程,  进程会触发DBWR写脏块,因此能快速将日志组状态,从active 修改为 inactive状态。  当然,如果有耐心,可以等待dbwr进程自动写脏块,日志组状态也能从active转变为inactive状态

drop redo logfile current报错的更多相关文章

  1. 简单记录一次REDO文件损坏报错 ORA-00333重做日志读取块出错

    一.故障描写叙述 首先是实例恢复须要用到的REDO文件损坏 二.解决方法 1.对于非当前REDO或者当前REDO可是无活动事务使用下面CLEAR命令: 用CLEAR命令重建该日志文件SQL>al ...

  2. Hive在drop表的时候报错

    问题背景: 在安装完Hive之后,初始化mysql是成功的,hive启动也是成功的,也能创建database,在database中也能创建表,也能查看表结构,但是在drop的时候就不行了,在hive ...

  3. Oracle recover current redo ORA-00600:[4193] (oracle 故障恢复current redo日志ORA-00600:[4193]报错)

    背景:搭建了一套oracle 19c主备库(单实例非CDB,PDB),linux7.5在断电后(没有进行数据库关闭)重启数据库报错如下图,redo当前状态下进行不完全恢复主库后resetlogs 打开 ...

  4. Oracle报错ORA-16433非归档丢失redo无法启动的恢复过程

    [案例]Oracle报错ORA-16433非归档丢失redo无法启动的恢复过程 转惜纷飞 今天ML的群中女神和travel在纠结一个恢复的问题,11.2.0.3版本,非归档,大概是rm掉current ...

  5. mysql报错Ignoring the redo log due to missing MLOG_CHECKPOINT between

    mysql报错Ignoring the redo log due to missing MLOG_CHECKPOINT between mysql版本:5.7.19 系统版本:centos7.3 由于 ...

  6. spring+hibernate整合:报错org.hibernate.HibernateException: No Session found for current thread

    spring+hibernate整合:报错信息如下 org.hibernate.HibernateException: No Session found for current thread at o ...

  7. GTID复制报错处理:Last_Error: Error 'Can't drop database 'test'; database doesn't exist' on query

    创建GTID主从连接: mysql, master_user; 报错显示: Slave_IO_Running: Yes Slave_SQL_Running: No Last_Error: Error ...

  8. current online redo logfile 丢失的处理方法

    昨天做了rm -rf操作后的恢复演练,并且是在没有不论什么备份的情况下.今天在做破坏性操作前,做了个rman全备,然后在线删除所有数据库文件,包含控制文件,数据文件,在线日志文件,归档文件等.来看看有 ...

  9. Spring+Hibernate4 Junit 报错No Session found for current thread

    论坛上有另外一篇更全面的帖子,jinnianshilongnian写的:http://www.iteye.com/topic/1120924 本文的环境是:  spring-framework-3.1 ...

随机推荐

  1. Eclipse导入Oracle/MySQL数库驱动包教程

    在操作数据库时除了import相关的SQL类外,还得在项目中导入数据库的驱动才能连接和操作数据库. 而数据库驱动jar包在默认Java的lib里是没有的,要自己到官网下载导入:本教程以Oracle为例 ...

  2. servlet/和/*匹配的区别

    两者真正的区别是,两者的长度不同,根据最长路径匹配的优先级,/*比/更容易被选中,而/的真正含义是,缺省匹配.既所有的URL都无法被选中的时候,就一定会选中/,可见它的优先级是最低的,这就两者的区别.

  3. hashlib 库

    hashlib 库 hash 是一种算法,用来接收一系列数据,经过计算后得到一个hash值 hash值的三大特征: 1. 如果传入的数据一样,得到的hash值一样 2. 只要采用的hash算法固定,无 ...

  4. Shell编程积累 zhuan

    在新的shell里执行程序 cd /home/lq/Server/anew-lstm_scriptmatlab -nodesktop -singleCompThred -r 'aStart' ,qui ...

  5. [x] 封装、继承,多态

    那么多态的作用是什么呢,封装可以使得代码模块化,继承可以扩展已存在的代码,他们的目的都是为了代码重用. 而多态的目的则是为了接口重用.也就是说,不论传递过来的究竟是那个类的对象,函数都能够通过同一个接 ...

  6. Python version 2.7, which was not found in the registry

    在安装部分Python包时会出现问题:明明已经安装了Python2.7,但无法在注册表相关位置找不到,那该怎么感觉该问题呢? 首先检查你的系统位数,位数不同,解决方案不一样. 1)32位系统:在cmd ...

  7. unity中键盘WASD控制。(WS控制物体前后移动,AD控制左右旋转。)

    private float rotateSpeed = 30f; private float movespeed = 5; void FixedUpdate() { //第一种控制移动 float h ...

  8. Mybatis的二级缓存注意点

    --声明:一下内容都不一定是正确的,只是自己测试的结果,请自己的动手操作得出自己的结论 1.开启Mybatis的二级缓存,不仅要在SqlMapConfig.xml中进行开启总开关,还要在对应的XXXM ...

  9. 4.2 C++虚成员函数

    参考:http://www.weixueyuan.net/view/6371.html 总结: virtual关键字仅用于函数声明,如果函数是在类外定义,则不需要再加上virtual关键字了. 在C+ ...

  10. GDI中StretchBlt或Blt缩放图片失真问题

    在用Scrollview控件的缩放图片时,严重失真: 解决方法:dc.SetStretchBltMode(COLORONCOLOR). 参考文章:https://blog.csdn.net/m3728 ...