ORA-00392ORA-00312日志正在清除故障_oracle

最近在还原Oracle数据库后open的时候碰到了ORA-00392: log 3 of thread 1 is being cleared, operation not allowed,其字面含义则是日志文件正在被清除,不允许操作。

通常情况下,当我们基于不完全恢复的时候,日志文件需要被清空,而此时是正在被清空。不是很好理解啊。下面是这个问题的解决方案。

一、故障现象

<code class="hljs vhdl">SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-00392: log 3 of thread 1 is being cleared, operation not allowed
ORA-00312: online log 3 thread 1: '/oradata/sincnet/redo03.log'
-- 查看故障描述信息
SQL> ho oerr ora 00392
00392, 00000, "log %s of thread %s is being cleared, operation not allowed"
// *Cause: An operation encountered this online log in the middle of being
// cleared. The command that began the clearing may have terminated
// without completing the clearing.
// *Action: If the clear command is still executing then wait for its
// completion. If it terminated then reissue the clear command, or
// drop the log.

--下面的SQL语句表名3个日志文件都处于clearing状态
SQL> select group#,bytes/1024/1024||'M',status from v$log;

GROUP# BYTES/1024/1024||'M' STATUS
---------- ----------------------------------------- ----------------
1 50M CLEARING
3 50M CLEARING_CURRENT
2 50M CLEARING</code>

二、故障处理

<code class="hljs vhdl"><code class="hljs vhdl">下面直接执行clear logfile 命令
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 1;
Database altered.
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 2;
Database altered.
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 3;
Database altered.
--再次查看状态,此时状态显示为常见的几种正常状态
SQL> select group#,bytes/1024/1024||'M',status from v$log;
GROUP# BYTES/1024/1024||'M' STATUS
---------- ----------------------------------------- ----------------
1 50M UNUSED
3 50M CURRENT
2 50M UNUSED
--再次尝试open resetlog,依旧错误,实例终止,需要upgrade
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00704: bootstrap process failure
ORA-39700: database must be opened with UPGRADE option
Process ID: 30553
Session ID: 1217 Serial number: 3
--查看是否存在pmon进程
SQL> ho ps -ef|grep pmon
oracle 30589 30440 0 16:02 pts/1 00:00:00 /bin/bash -c ps -ef|grep pmon
oracle 30591 30589 0 16:02 pts/1 00:00:00 grep pmon
--Author : Leshami
--Blog : http://blog.csdn.net/leshami
--下面尝试upgrade,因为当前基于一个11.2.0.1的备份恢复到11.2.0.4,所以需要upgrade
SQL> startup upgrade;
ORA-24324: service handle not initialized
ORA-01041: internal error. hostdef extension doesn't exist
SQL>
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@10134569 DBSRV]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Feb 24 16:03:15 2016
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup upgrade;
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2260088 bytes
Variable Size 704643976 bytes
Database Buffers 352321536 bytes
Redo Buffers 9711616 bytes
Database mounted.
Database opened.
SQL> @$ORACLE_HOME/rdbms/admin/catupgrd.sql; --执行升级脚本</code></code>

关于ORA-00392ORA-00312日志正在清除故障的教程小编就给大家介绍这么多,希望对大家有所帮助!

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ora_00392_ora_00312
, ora_00392
日志清除故障
ora 00392 ora 00312、ora 00392、ora 00312、ora01624 ora00312、ora00312该如何解决,以便于您获取更多的相关知识。

时间: 2024-10-09 08:04:59

ORA-00392ORA-00312日志正在清除故障_oracle的相关文章

ORA-00392 ORA-00312 日志正在清除故障

最近在还原Oracle数据库后open的时候碰到了ORA-00392: log 3 of thread 1 is being cleared, operation not allowed,其字面含义则是日志文件正在被清除,不允许操作.通常情况下,当我们基于不完全恢复的时候,日志文件需要被清空,而此时是正在被清空.不是很好理解啊.下面是这个问题的解决方案. 一.故障现象 SQL> alter database open resetlogs; alter database open resetlog

Linux系统的LOG日志文件及入侵后日志的清除

UNIX网管员主要是靠系统的LOG,来获得入侵的痕迹.当然也有第三方工具记录入侵系统的 痕迹,UNIX系统存放LOG文件,普通位置如下: /usr/adm - 早期版本的UNIX/var/adm - 新一点的版本使用这个位置/var/log - 一些版本的Solaris,linux BSD,Free BSD使用这个位置/etc - 多数UNIX版本把utmp放在这里,有些也把wtmp放在这里,syslog.conf在这里 下面的一些文件根据你所在的目录不同而不同:acct 或 pacct -- 

怎样利用路由器日志排除路由器故障

  我们以Cisco为例来认识一下,路由器的一些重要信息可以通过syslog机制在内部网络的Unix主机上作路由器日志.在路由器运行过程中,路由器会向日志主机发送包括链路建立失败信息.包过滤信息等等日志信息,通过登录到日志主机,网络管理员可以了解日志事件,对日志文件进行分析,可以帮助管理员进行故障定位.故障排除和网络安全管理. 认识syslog设备 首先介绍一下syslog设备,它是标准Unix,的跟踪记录机制,syslog可以记录本地的一些事件或通过网络记录另外一个主机上的事件,然后将这些信息

Oracle日常维护中管理用户以及重做日志文件的方法_oracle

一.管理用户和安全性在db中各种对象以 用户(方案) 的方式组织管理 select distinct object_type from dba_objects;         模式对象,schema ----> user.objects(某个用户下的某个对象) 在创建对象和访问对象前,首先创建对象的拥有者--用户         所有的对象在用户下 用户有相关的属性,有些必须明确设置,有些可以使用默认值         常见属性:用户名.口令.默认表空间(可默认).临时表空间(可默认).账户状

SQL Server 数据库清除日志的方法_mssql2005

方法一: 1.打开查询分析器,输入命令 BACKUP LOG database_name WITH NO_LOG 2.再打开企业管理器--右键要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了. 方法二: 设置检查点,自动截断日志 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大 1.设置数据库模式为简单模

SQL Server 清除数据库日志脚本

SQL Server 清除数据库日志脚本 清除mssql数据库日志的代码: Use master go declare @dbname varchar(50) declare temp_cur cursor scroll for select name from sysdatabases open temp_cur fetch first from temp_cur into @dbname while @@fetch_status =0  begin   exec ('backup log [

VBS脚本也有GUI图形界面 日志清除功能_vbs

使用方法:将下面的代码保存为rizhi.vbs双击运行即可,如果不行可能是杀毒软件的问题.可以搜索下.以前提供过解决方法. 复制代码 代码如下: set ie=wscript.createobject("internetexplorer.application","event_") '创建ie对象' ie.menubar=0 '取消菜单栏' ie.addressbar=0 '取消地址栏' ie.toolbar=0 '取消工具栏' ie.statusbar=0 '取消

SQL Server误区30日谈 第14天 清除日志后会将相关的LSN填零初始化_MsSql

误区 #14.清除日志后会将相关的LSN填零初始化 错误     当日志文件在手动增长,自动增长和创建时都会进行填零初始化操作.但是请不要把这个过程和定期清除日志的过程搞混.日志截断仅仅意味着将一个或多个VLF标记为不活动以便被重复使用.在日志清除的过程中,并没有任何日志被清除或是填0."清除日志"和"截断日志"意思是一样的,但都属于用词不当,因为在这个过程中日志的大小不会有任何改变.     你可以在我的博客中看到有关日志文件填零初始化的博文:Search Eng

【恢复】Redo日志文件丢失的恢复

第一章 Redo日志文件丢失的恢复 1.1  online redolog file 丢失 联机Redo日志是Oracle数据库中比较核心的文件,当Redo日志文件异常之后,数据库就无法正常启动,而且有丢失据的风险,强烈建议在条件允许的情况下,对Redo日志进行多路镜像.需要注意的是,RMAN不能备份联机Redo日志文件.所以,联机Redo日志一旦出现故障,则只能进行清除日志了.清除日志文件即表明可以重用该文件. 1.1.1  数据库归档/非归档模式下inactive redo异常ORA-003