利用归档恢复数据文件
2014-09-17 22:35
344 查看
开启归档
SYS@PROD>startup mount;
ORACLE instance started.
Total System Global Area 417546240 bytes
Fixed Size 2253824 bytes
Variable Size 268438528 bytes
Database Buffers 142606336 bytes
Redo Buffers 4247552 bytes
Database mounted.
SYS@PROD>alter database archivelog;
Database altered.
SYS@PROD>alter database open;
创建表空间,并作若干组组日志切换
SYS@PROD>create tablespace tbs1
datafile'/u01/app/oracle/oradata/PROD/tbs1_1.dbf' size 10m,
'/u01/app/oracle/oradata/PROD/tbs1_2.dbf' size 10m
2 3 4 ;
Tablespace created.
SYS@PROD>alter system switch logfile;
System altered.
SYS@PROD>/
System altered.
SYS@PROD>/
System altered.
SYS@PROD>/
System altered.
在表空间上创建一个测试表t_tbs
SYS@PROD>create table t_tbs(x int)tablespace tbs1;
Table created.
SYS@PROD>desc t_tbs;
Name Null? Type
----------------------------------------- -------- ----------------------------
X NUMBER(38)
断开连接,使数据库释放句柄,重新连接并检查表。
SYS@PROD>quit
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@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 17 22:15:21 2014
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@PROD>desc tbs1;
ERROR:
ORA-04043: object tbs1 does not exist
发现对象不存在
下面来重建数据文件
SYS@PROD>select FILE_NAME,FILE_ID,TABLESPACE_NAME,STATUS from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/datafile/o1_mf_system_b0btt0o2_.dbf
1 SYSTEM AVAILABLE
/u01/app/oracle/oradata/PROD/datafile/o1_mf_sysaux_b0bttrn5_.dbf
2 SYSAUX AVAILABLE
/u01/app/oracle/oradata/PROD/datafile/o1_mf_undotbs1_b0btvhov_.dbf
3 UNDOTBS1 AVAILABLE
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/datafile/o1_mf_users_b0btwnom_.dbf
4 USERS AVAILABLE
/u01/app/oracle/oradata/PROD/test.dbf
5 TEST AVAILABLE
/u01/app/oracle/oradata/PROD/test2.dbf
6 TEST2 AVAILABLE
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/test3.dbf
7 TEST3 AVAILABLE
/u01/app/oracle/oradata/PROD/test1.dbf
8 TEST1 AVAILABLE
/u01/app/oracle/oradata/PROD/tbs1_1.dbf
9 TBS1 AVAILABLE
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/tbs1_2.dbf
10 TBS1 AVAILABLE
10 rows selected.
SYS@PROD>alter database datafile 9 offline;
Database altered.
SYS@PROD>alter database create datafile '/u01/app/oracle/oradata/PROD/tbs1_1.dbf' as '/u01/app/oracle/oradata/PROD/tbs1_1.dbf';
Database altered.
SYS@PROD>alter database datafile 10 offline;
Database altered.
SYS@PROD>alter database create datafile '/u01/app/oracle/oradata/PROD/tbs1_2.dbf' as '/u01/app/oracle/oradata/PROD/tbs1_2.dbf';
Database altered.
恢复datafile 9与datafile 10
SYS@PROD>recover datafile 9,10;
ORA-00279: change 327938 generated at 09/17/2014 22:09:41 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch1_19_857228474.dbf
ORA-00280: change 327938 for thread 1 is in sequence #19
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
auto
此处为手工输入
ORA-00279: change 328638 generated at 09/17/2014 22:12:58 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch1_20_857228474.dbf
ORA-00280: change 328638 for thread 1 is in sequence #20
Log applied.
Media recovery complete.
将数据文件online
SYS@PROD>alter database datafile 9,10 online;
Database altered.
查看表,发现对象存在
SYS@PROD>desc t_tbs;
Name Null? Type
----------------------------------------- -------- ----------------------------
X NUMBER(38)
SYS@PROD>startup mount;
ORACLE instance started.
Total System Global Area 417546240 bytes
Fixed Size 2253824 bytes
Variable Size 268438528 bytes
Database Buffers 142606336 bytes
Redo Buffers 4247552 bytes
Database mounted.
SYS@PROD>alter database archivelog;
Database altered.
SYS@PROD>alter database open;
创建表空间,并作若干组组日志切换
SYS@PROD>create tablespace tbs1
datafile'/u01/app/oracle/oradata/PROD/tbs1_1.dbf' size 10m,
'/u01/app/oracle/oradata/PROD/tbs1_2.dbf' size 10m
2 3 4 ;
Tablespace created.
SYS@PROD>alter system switch logfile;
System altered.
SYS@PROD>/
System altered.
SYS@PROD>/
System altered.
SYS@PROD>/
System altered.
在表空间上创建一个测试表t_tbs
SYS@PROD>create table t_tbs(x int)tablespace tbs1;
Table created.
SYS@PROD>desc t_tbs;
Name Null? Type
----------------------------------------- -------- ----------------------------
X NUMBER(38)
断开连接,使数据库释放句柄,重新连接并检查表。
SYS@PROD>quit
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@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 17 22:15:21 2014
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@PROD>desc tbs1;
ERROR:
ORA-04043: object tbs1 does not exist
发现对象不存在
下面来重建数据文件
SYS@PROD>select FILE_NAME,FILE_ID,TABLESPACE_NAME,STATUS from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/datafile/o1_mf_system_b0btt0o2_.dbf
1 SYSTEM AVAILABLE
/u01/app/oracle/oradata/PROD/datafile/o1_mf_sysaux_b0bttrn5_.dbf
2 SYSAUX AVAILABLE
/u01/app/oracle/oradata/PROD/datafile/o1_mf_undotbs1_b0btvhov_.dbf
3 UNDOTBS1 AVAILABLE
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/datafile/o1_mf_users_b0btwnom_.dbf
4 USERS AVAILABLE
/u01/app/oracle/oradata/PROD/test.dbf
5 TEST AVAILABLE
/u01/app/oracle/oradata/PROD/test2.dbf
6 TEST2 AVAILABLE
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/test3.dbf
7 TEST3 AVAILABLE
/u01/app/oracle/oradata/PROD/test1.dbf
8 TEST1 AVAILABLE
/u01/app/oracle/oradata/PROD/tbs1_1.dbf
9 TBS1 AVAILABLE
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME STATUS
---------- ------------------------------ ---------
/u01/app/oracle/oradata/PROD/tbs1_2.dbf
10 TBS1 AVAILABLE
10 rows selected.
SYS@PROD>alter database datafile 9 offline;
Database altered.
SYS@PROD>alter database create datafile '/u01/app/oracle/oradata/PROD/tbs1_1.dbf' as '/u01/app/oracle/oradata/PROD/tbs1_1.dbf';
Database altered.
SYS@PROD>alter database datafile 10 offline;
Database altered.
SYS@PROD>alter database create datafile '/u01/app/oracle/oradata/PROD/tbs1_2.dbf' as '/u01/app/oracle/oradata/PROD/tbs1_2.dbf';
Database altered.
恢复datafile 9与datafile 10
SYS@PROD>recover datafile 9,10;
ORA-00279: change 327938 generated at 09/17/2014 22:09:41 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch1_19_857228474.dbf
ORA-00280: change 327938 for thread 1 is in sequence #19
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
auto
此处为手工输入
ORA-00279: change 328638 generated at 09/17/2014 22:12:58 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch1_20_857228474.dbf
ORA-00280: change 328638 for thread 1 is in sequence #20
Log applied.
Media recovery complete.
将数据文件online
SYS@PROD>alter database datafile 9,10 online;
Database altered.
查看表,发现对象存在
SYS@PROD>desc t_tbs;
Name Null? Type
----------------------------------------- -------- ----------------------------
X NUMBER(38)
相关文章推荐
- ORA-00376错误 利用归档日志恢复数据文件
- 非归档模式下恢复利用offline drop命令误删除的数据文件
- 利用DBMS_BACKUP_RESETORE从备份中恢复控制文件数据文件和归档日志
- 非归档模式下恢复利用offline drop命令误删除的数据文件
- 利用 BBED 恢复非归档模式下 OFFLINE 数据文件
- 没有备份、只有归档日志,如何恢复数据文件?
- 未启用归档数据库非数据文件(spfile,control,redo,undo,temp)全丢失的恢复方法
- rman 恢复---归档丢失and数据文件损坏
- 在归档模式下有备份,丢失数据文件的恢复
- 拥有所有归档文件,但没有备份情况下的数据文件恢复
- rman实验之归档模式有备份,正常关机丢失数据文件的恢复
- Oracle恢复(三)------归档模式下恢复数据文件
- 如何恢复数据库-缺失了数据文件,存在所有的归档
- 【恢复】非归档模式下因误删除数据文件导致数据库无法OPEN的故障处理
- 拥有所有归档文件,但没有备份情况下的数据文件恢复
- 没有备份、只有归档日志,如何恢复数据文件?
- 拥有所有归档文件,但没有备份情况下的数据文件恢复
- 拥有所有归档文件,但没有备份情况下的数据文件恢复
- 利用Linux的特性恢复误删的数据文件
- DG有归档无备份时的数据文件恢复