手工恢复(非归档模式)
相关阅读: Oracle手工完全恢复案例(归档模式) http://www.linuxidc.com/Linux/2013-06/86719.htm
案例一:历史日志没有被覆盖
1.首先把数据库切成非归档模式:startup mountforce
alter database noarchivelog
;alter database
open;再次查看数据库模式sys@SIQIAN11
>archive
log listDatabase
logmode No Archive
ModeAutomaticarchival DisabledArchivedestination
/backup
/archOldest
onlinelog sequence 15
Currentlog sequence172.冷备3.查看当前日志信息sys@SIQIAN11
>select group#
,sequence#
,archived
,status
from v$
log; GROUP#
SEQUENCE# ARC STATUS-------------------- --- ----------------119
NO CURRENT217
NO INACTIVE318
NO INACTIVE4.用test用户登录建表插入数据test@SIQIAN11
>create table t01
(id
int) tablespace test
; test@SIQIAN11
>begin2
for i
in 1..103
loop4
insert into t01
values(i
);5
end loop;6
end;7
/commit;再次查看当前日志sys@SIQIAN11
>select group#
,sequence#
,archived
,status
from v$
log; GROUP#
SEQUENCE# ARC STATUS---------- ------------- ----------------119
NO CURRENT217
NO INACTIVE318
NO INACTIVE说明这次变化记录在了第1组日志中,此时日志没有被覆盖。5.关库删除数据文件shutdown abort
[oracle@siqian siqian11g
]$ rm
-f
/u01
/oradata
/siqian11g
/test01
.dbf6.起库并查看要恢复的数据文件startup出错:ORA
-01157
: cannot identify
/lock data file 6
- see DBWR trace
fileORA
-01110
: data file 6
: "/u01/oradata/siqian11g/test01.dbf"查看要恢复的数据文件sys@SIQIAN11
>select file#
,error
from v$recover_file
;FILE# ERROR---------- -----------------------------------------------------------------1
UNKNOWNERROR2
UNKNOWNERROR3
UNKNOWNERROR4
UNKNOWNERROR5
UNKNOWNERROR6
FILE NOT FOUND 6
rows selected
.7.还原数据文件并做恢复
[oracle@siqian siqian11g
]$ cp
/backup
/cold
/test01
.dbf
/u01
/oradata
/siqian11g
/sys@SIQIAN11
>recover datafile 6
;Media recoverycomplete
.sys@SIQIAN11
>alter database
open;8.验证sys@SIQIAN11
>select * from test
.t01
;ID----------1234567891010
rows selected
.案例二:日志发生切换,历史日志被覆盖(只能作不完全恢复)
承接上面的例子,这次做完一些操作后切日志使其切换。模拟环境:1.test用户登录再在t01表中插入若干数据test@SIQIAN11
>begin2
for i
in 11..203
loop4
insert into t01
values(i
);5
end loop;6
end;7
/PL
/SQL procedure successfully completed
.commit;2.查看当前日志信息 sys@SIQIAN11
>select group#
,sequence#
,archived
,first_change#
from v$
log; GROUP#
SEQUENCE# ARC FIRST_CHANGE#-------------------- --- -------------119
NO2200111220
NO2225498318
NO2179197也就是说刚才的变化记录在了第1组中3.切换日志,使其被覆盖
alter system switch logfile
;多切几次然后再次查看:sys@SIQIAN11
>select group#
,sequence#
,archived
,first_change#
from v$
log;GROUP#
SEQUENCE# ARC FIRST_CHANGE#---------- ------------- -------------122
NO2226207223
NO2226211321
NO2226205现在序列19已经被覆盖。而且t01表中有20条记录。4.关库删除相应的数据文件shutdown abort
[oracle@siqian siqian11g
]$ rm
-f
/u01
/oradata
/siqian11g
/test01
.dbf5.起库并查看要恢复的数据文件ORA
-01157
: cannot identify
/lock data file 6
- see DBWR trace
fileORA
-01110
: data file 6
: "/u01/oradata/siqian11g/test01.dbf"sys@SIQIAN11
>select file#
,error
from v$recover_file
;FILE# ERROR---------------------------------------------------------------------------1
UNKNOWN ERROR2
UNKNOWN ERROR3
UNKNOWN ERROR4
UNKNOWN ERROR5
UNKNOWN ERROR6
FILE NOT FOUND 6
rows selected
.PowerDesigner导出SQL,导入到Oracle中查询表结构报“ORA-04043: 对象XXX不存在”解决Oracle手工完全恢复案例(归档模式)相关资讯 Oracle恢复 Oracle非归档模式
- Oracle在非归档模式下不能更改表空 (05/15/2015 08:39:39)
- Oracle基于cancel的不完全恢复 (10/08/2014 19:32:05)
- Oracle手工完全恢复案例(归档模式 (06/30/2013 07:23:39)
| - Oracle数据表被drop后的恢复 (10/15/2014 10:43:07)
- Oracle非归档模式Media Recovery错 (07/26/2014 14:56:36)
- Oracle控制文件新增,备份,恢复 (06/22/2013 09:11:04)
|
本文评论 查看全部评论 (0)