oracle 误删除日志文件后的处理方法!
解决方法背景
1 整理c 盘的垃圾文件,吧oralce 的。log 日志文件删除。
2 然后oralce 一直不能使用,提示tns 有问题,
然后再往上找资料,一直没有解决掉,后来看到一边文章如下,问题解决掉了,特和大家分享!
===================================================
下属内容为转
===================================================
自己机器安装的oracle ,完全是为了方便学习,但是如果startup ,机器十分慢(内存512M ), 所以好久没有startup 了,今天startup ,出问题了:
Microsoft Windows XP [ 版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp. C:/Documents and Settings/5201314
>sqlplus /nolog SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 5 月 26 10:14:25 2006 Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn sys/dd as sysdba 已连接到空闲例程。
SQL> statrup SP2-0042: 未知命令 "statrup" - 其余行忽略。
SQL> startup ORACLE 例程已经启动。 Total System Global Area 205520896 bytes Fixed Size 1248092 bytes Variable Size 88081572 bytes Database Buffers 109051904 bytes Redo Buffers 7139328 bytes 数据库装载完毕。 ORA-00313: 无法打开日志组 1 ( 用于线程 1) 的成员 ORA-00312: 联机日志 1 线程 1: 'C:/ORACLE/PRODUCT/10.2.0/ORADATA/MYDB/REDO01.LOG'
SQL> alter database open resetlogs; alter database open resetlogs * 第 1 行出现错误: ORA-01139: RESETLOGS 选项仅在不完全数据库恢复后有效
SQL> alter database open resetlog; alter database open resetlog * 第 1 行出现错误: ORA-02288: 无效的 OPEN 模式
SQL> alter database open resetlogs 2 / alter database open resetlogs * 第 1 行出现错误: ORA-01139: RESETLOGS 选项仅在不完全数据库恢复后有效 SQL> alter database open; alter database open * 第 1 行出现错误: ORA-00313: 无法打开日志组 1 ( 用于线程 1) 的成员 ORA-00312: 联机日志 1 线程 1: 'C:/ORACLE/PRODUCT/10.2.0/ORADATA/MYDB/REDO01.LOG'
SQL> 解决过程: Microsoft Windows XP [ 版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp. C:/Documents and Settings/5201314
>sqlplus /nolog SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 5 月 27 11:19:52 2006 Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn sys/dd as sysdba 已连接。
SQL> startup mount ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
SQL> recover database until time '2006-05-19 13:45:02'; 完成介质恢复。
SQL> alter database open resetlogs; 数据库已更改。
SQL> shutdown immediate; 数据库已经关闭。已经卸载数据库。 ORACLE 例程已经关闭。
SQL> startup ORACLE 例程已经启动。 Total System Global Area 205520896 bytes Fixed Size 1248092 bytes Variable Size 79692964 bytes Database Buffers 117440512 bytes Redo Buffers 7139328 bytes 数据库装载完毕。数据库已经打开。
SQL>
很多网友在把某个数据库实例的REDO01~03.LOG 三个重做日志删掉后,会出现无法正常登陆数据库的现象,下面的示例是具体的恢复过程,希望能为大家解决难题:
[ 关键字] Oracle 数据库 日志文件 恢复
很多网友在把某个数据库实例的REDO01~03.LOG 三个重做日志删掉后,会出现无法正常登陆数据库的现象,下面的示例是具体的恢复过程,希望能为大家解决难题:
◆ 一:
c:/>sqlplus /nolog
◆ 二:
sql>connect /@instancename as sysdba;
◆ 三:
startup mount;
-- 启动实例,安装数据库,但不打开数据库,
可以开始操作控制文件、日志文件、数据文件等。
◆ 四:
select * from v$logfile;
-- 察看Redo 文件的信息
◆ 五;
select * from v$log;
-- 察看Redo 日志的状态,一般有unused,current,clearing,clearing- 。
◆ 六:非当前(current) 的未归档日志文件恢复alter database clear logfile group N;
--N 就是日志组的顺序号。
归档日志文件恢复:
alter database clear logfile unarchived group N;
◆ 七; 当前日志文件用上述方法不能恢复的话使用recover database until cancel 。
转自其他网站