|
- 1.确认当前日志组为3
- 2.创建redotest表,并insert数据,确定这些操作保存到当前日志组3中
- 3.shutdown immediate数据库,把日志组3的成员改名(损坏)
- 4.启动数据库mount,检查当前日志组为3,已经损坏无法open数据库,作recover database until cancel; open resetlogs
- 5.检查redotest表,无数据损失。
- Microsoft Windows XP [Version 5.1.2600]
- (C) Copyright 1985-2001 Microsoft Corp.
- Z:>sqlplus mydb
- SQL*Plus: Release 9.2.0.7.0 - Production on 星期三 4月 2 08:55:01 2008
- Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
- 请输入口令:
- 连接到:
- Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
- With the Partitioning, OLAP and Oracle Data Mining options
- JServer Release 9.2.0.7.0 - Production
- MYDB@MYDB> select group#,status,archived from v$log;
- GROUP# STATUS ARCHIV
- ---------- -------------------------------- ------
- 1 INACTIVE YES
- 2 INACTIVE YES
- 3 CURRENT NO
- 已用时间: 00: 00: 00.00
- MYDB@MYDB> select group#,member from v$logfile;
- GROUP#
- ----------
- MEMBER
- ----------------------------------------------------------------------------------------------------
- 3
- C:ORACLEDBORA92ORADATAMYDBREDO03.LOG
- 2
- C:ORACLEDBORA92ORADATAMYDBREDO02.LOG
- 1
- C:ORACLEDBORA92ORADATAMYDBREDO01.LOG
- 已用时间: 00: 00: 00.00
- MYDB@MYDB> create table redotest as select * from v$version where 1=0;
- 表已创建。
- 已用时间: 00: 00: 00.01
- MYDB@MYDB> insert into redotest select * from v$version;
- 已创建5行。
- 已用时间: 00: 00: 00.00
- MYDB@MYDB> commit;
- 提交完成。
- 已用时间: 00: 00: 00.00
- MYDB@MYDB> select * from redotest;
- BANNER
- ----------------------------------------------------------------------------------------------------
- Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
- PL/SQL Release 9.2.0.7.0 - Production
- CORE 9.2.0.7.0 Production
- TNS for 32-bit Windows: Version 9.2.0.7.0 - Production
- NLSRTL Version 9.2.0.7.0 - Production
- 已用时间: 00: 00: 00.00
- MYDB@MYDB> select group#,status,archived from v$log;
- GROUP# STATUS ARCHIV
- ---------- -------------------------------- ------
- 1 INACTIVE YES
- 2 INACTIVE YES
- 3 CURRENT NO
- 已用时间: 00: 00: 00.00
- MYDB@MYDB> shutdown immediate;
- ORA-01031: 权限不足
- MYDB@MYDB> conn / as sysdba
- 已连接。
- MYDB@MYDB> shutdown immediate;
- 数据库已经关闭。
- 已经卸载数据库。
- ORACLE 例程已经关闭。
- MYDB@MYDB> host
- Microsoft Windows XP [Version 5.1.2600]
- (C) Copyright 1985-2001 Microsoft Corp.
- Z:>dir C:ORACLEDBORA92ORADATAMYDBREDO03.LOG
- Volume in drive C has no label.
- Volume Serial Number is 2848-3F2D
- Directory of C:ORACLEDBORA92ORADATAMYDB
- 2008-04-02 08:56 104,858,112 REDO03.LOG
- 1 File(s) 104,858,112 bytes
- 0 Dir(s) 23,216,091,136 bytes free
- Z:>rename C:ORACLEDBORA92ORADATAMYDBREDO03.LOG C:ORACLEDBORA92ORADATAMYDBREDO03.test
- The syntax of the command is incorrect.
- Z:>mv C:ORACLEDBORA92ORADATAMYDBREDO03.LOG C:ORACLEDBORA92ORADATAMYDBREDO03.test
- Z:>dir C:ORACLEDBORA92ORADATAMYDBREDO03.LOG
- Volume in drive C has no label.
- Volume Serial Number is 2848-3F2D
- Directory of C:ORACLEDBORA92ORADATAMYDB
- File Not Found
- Z:>dir C:ORACLEDBORA92ORADATAMYDBREDO03.test
- Volume in drive C has no label.
- Volume Serial Number is 2848-3F2D
- Directory of C:ORACLEDBORA92ORADATAMYDB
- 2008-04-02 08:56 104,858,112 REDO03.test
- 1 File(s) 104,858,112 bytes
- 0 Dir(s) 23,216,082,944 bytes free
- Z:>sqlplus " / as sysdba"
- SQL*Plus: Release 9.2.0.7.0 - Production on 星期三 4月 2 08:59:03 2008
- Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
- 已连接到空闲例程。
- SQL/IDLE> startup mount;
- ORACLE 例程已经启动。
- Total System Global Area 127475516 bytes
- Fixed Size 454460 bytes
- Variable Size 83886080 bytes
- Database Buffers 37748736 bytes
- Redo Buffers 5386240 bytes
- 数据库装载完毕。
- SQL/IDLE> select group#,status,archived from v$log;
- GROUP# STATUS ARCHIV
- ---------- -------------------------------- ------
- 1 INACTIVE YES
- 2 INACTIVE YES
- 3 CURRENT NO
- 已用时间: 00: 00: 00.00
- SQL/IDLE> alter database open;
- alter database open
- *
- ERROR 位于第 1 行:
- ORA-00313: 无法打开日志组 3 (线程 1) 的成员
- ORA-00312: 联机日志 3 线程 1: 'C:ORACLEDBORA92ORADATAMYDBREDO03.LOG'
- 已用时间: 00: 00: 00.06
- SQL/IDLE> recover database until cancel;
- 完成介质恢复。
- SQL/IDLE> alter database open;
- alter database open
- *
- ERROR 位于第 1 行:
- ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
- 已用时间: 00: 00: 00.04
- SQL/IDLE> alter database open resetlogs;
- 数据库已更改。
- 已用时间: 00: 00: 16.01
- SQL/IDLE> select group#,status,archived from v$log;
- GROUP# STATUS ARCHIV
- ---------- -------------------------------- ------
- 1 UNUSED YES
- 2 UNUSED YES
- 3 CURRENT NO
- 已用时间: 00: 00: 00.00
- SQL/IDLE> select * from mydb.redotest;
- BANNER
- ----------------------------------------------------------------------------------------------------
- Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
- PL/SQL Release 9.2.0.7.0 - Production
- CORE 9.2.0.7.0 Production
- TNS for 32-bit Windows: Version 9.2.0.7.0 - Production
- NLSRTL Version 9.2.0.7.0 - Production
- 已用时间: 00: 00: 00.00
- SQL/IDLE>
复制代码 |
|