案例:
最后一次对表空间aaa备份是在2005年03月03日上午
2005年04月03日上午应用报sp表不能查询,经查询user_tables发现
sp表处于aaa表空间.aaa表空间需要恢复
案例:
最后一次对表空间aaa备份是在2005年03月03日上午
2005年04月03日上午应用报sp表不能查询,经查询user_tables发现
sp表处于aaa表空间.aaa表空间需要恢复
现象:
SQL> select * from sp;
select * from sp
*
ERROR 位于第 1 行:
ORA-00376: 此时无法读取文件 13
ORA-01110: 数据文件 13: 'D:ORACLEORADATALIYONGAAA.DBF'
SQL> select table_name,tablespace_name from user_tables;
TABLE_NAME TABLESPACE_NAME
------------------------------ ------------------------------
SP AAA
SQL> select file_name,
2 tablespace_name
3 from dba_data_files
4 where tablespace_name='AAA';
FILE_NAME
----------------------------------------
TABLESPACE_NAME
------------------------------
D:ORACLEORADATALIYONGAAA.DBF
AAA
表空间对应数据文件为D:ORACLEORADATALIYONGAAA.DBF.
D:ORACLEORADATALIYONGAAA.DBF需要恢复.
1>
将需要介质恢复的表空间offline
SQL> alter tablespace aaa offline temporary;
表空间已更改。
2> 将最近备份的表空间数据文件放置在磁盘上,并告诉控制文件你放置的位置.
SQL> alter database rename file 'D:ORACLEORADATALIYONGAAA.DBF'
2 to 'D:oracleoradatatsbkaaa.dbf';
数据库已更改。
3> 恢复表空间aaa
SQL> recover tablespace aaa;
完成介质恢复。
4> online 表空间aaa.
SQL> recover tablespace aaa;
完成介质恢复。
SQL> alter tablespace aaa online;
表空间已更改。
SQL> show user
USER 为"LIYONG"
SQL> select count(*) from sp;
COUNT(*)
----------
13
至此丢失的数据已经找回.
总结:
完全恢复成功的前提是:最近一次备份表空间aaa后的所有归档和联机日志存在.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/76065/viewspace-791938/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/76065/viewspace-791938/