Oracle的不完全恢复方式

上一篇 / 下一篇  2008-04-26 11:14:39 / 个人分类:Oracle

几种不完全恢复方式

A.基于时间恢复:
 1.
  host date
  host time
  truncate table tablename
  shutdown immediate
  startup mount
  host copy 所有数据文件
 2.查备份文件的时间点
  select file#,to_char(time,'yyyy-mm-dd hh24:mi:ss') from v$recover_file
 3.恢复
  recover database until time '2008-03-29 20:22:45';
 4.以resetlogs方式打开
  alter database open resetlogs;
 5.备份所有数据文件和控制文件(当以resetlogs打开后都要)
   archive log list   //日志从1开始
   select name from v$datafile
   union
   select name from v$controlfile
   alter database begin backup
   host copy  datafile
   alter database backup controlfile to '\backup\demo.ctl'
   alter database end backup
   alter system archive log current

B.基于SCN恢复:
  1.
   select current_scn from v$database
   drop table tablename
   conn / as sysdba
   shutdown immediate
   startup mount
   host copy datafile
  2.查scn(确保小于要恢复的SCN)
   select file#,change# from v$recover_file   
  3.恢复
   recover database until change scn号
  4.以resetlogs方式打开
   alter database open resetlogs;
  5.备份所有数据文件和控制文件(当以resetlogs打开后都要)
   archive log list   //日志从1开始
   select name from v$datafile
   union
   select name from v$controlfile
   alter database begin backup
   host copy  datafile
   alter database backup controlfile to '\backup\demo.ctl'
   alter database end backup
   alter system archive log current


C.基于取消恢复:
 1.
  conn / as sysdba
  shutdown immediate
  startup mount
  host copy datafile
 2.查scn(确保小于要恢复到日志序列号的起始SCN)
  select file#,change# from v$recover_file  
  select max(first_change#) from v$log_history where sequence# =8;   //查日志起始SCN 
 3.恢复
  recover database until cancel  (最后指定取消)
 4.以resetlogs方式打开
   alter database open resetlogs;
 5.备份所有数据文件和控制文件(当以resetlogs打开后都要)
   archive log list   //日志从1开始
   select name from v$datafile
   union
   select name from v$controlfile
   alter database begin backup
   host copy  datafile
   alter database backup controlfile to '\backup\demo.ctl'
   alter database end backup
   alter system archive log current
 

D.基于备份控制文件恢复:
 1.
   drop tablespace users including contents;
   conn / as sysdba
   shutdown immediate
   host copy datafile
   startup mount
 2.查备份文件的时间点
   select file#,to_char(time,'yyyy-mm-dd hh24:mi:ss') from v$recover_file
 3.恢复
   recover database until time '2008-03-29 21:33:13' using backup controlfile;
 4.以resetlogs方式打开
   alter database open resetlogs;
 5.备份所有数据文件和控制文件(当以resetlogs打开后都要)
   archive log list   //日志从1开始
   select name from v$datafile
   union
   select name from v$controlfile
   alter database begin backup
   host copy  datafile
   alter database backup controlfile to '\backup\demo.ctl'
   alter database end backup
   alter system archive log current


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-12-05  
 123456
78910111213
14151617181920
21222324252627
28293031   

数据统计

  • 访问量: 2386
  • 日志数: 77
  • 建立时间: 2008-04-15
  • 更新时间: 2008-11-27

RSS订阅

Open Toolbar