binghai03 发表于 2018-9-24 08:49:16

oracle技术之oracle手工完全恢复(一)

  1、完全恢复
  通过备份、归档日志、current redo ,将database恢复到failure 前的最后一次commit 状态。(通常用于介质失败)
  ——归档模式
  1)完全恢复
  2)不完全恢复
  ——非归档模式
  1)恢复到最后一次备份
  2、instance recover 和 mediarecover 区别:
  ——instance recover :instance 没有正常关闭 ,由smon 执行
  ——media recover:因为介质failure,文件丢失,需dba 通过备份和redo 来恢复
  3、media recover的步骤
  (1)restore 转储:将备份恢复到丢失文件的原位置
  (归档模式下做数据恢复时,控制文件千万不能做恢复,否则将无法利用redo日志做recover)
  (2)recover 恢复: 利用redo 日志,将备份点后的数据块通过redo 日志进行重做
  4、如何restore 和 recover
  1)restore:手工恢复用的是os 下的拷贝命令。如cp
  2)recover: sql 命令
  5、非归档模式下的数据恢复
  1)转储所有的datafile 和controlfile
  2)如果日志以切换,历史日志被覆盖,只能恢复到最近备份;如果日志没有发生切换,可以恢复到最后commit 状态
  6、归档模式下的数据恢复
  1)完全恢复
  2)不完全恢复
  7、完全恢复和不完全恢复的区别
  1)完全恢复:需要所有的备份和redo 日志,可以将datafile恢复到failure前得最后一次commit,不会出现数据丢失
  2)不完全恢复:通过备份和日志将database恢复到过去的某个时间点,有数据丢失。(尽量避免)
  8、完全恢复的步骤
  1)restore :转储datafile
  2)recover:利用归档日志和当前的redo 做recover
  9、recover database:当大部分datafile丢失,只能mount状态下
  recover tablespace:tablespace 的数据文件都丢失了,在open状态
  recover datafile :当单个datafile丢失,可以在mount 或 open 状态
  10、恢复过程查看的视图:
  1)v$recover_file:查看需要恢复的datafile
  2)v$recovery_log:查看recover 需要的redo 日志
  3)v$archvied_log:查看已经归档的日志
  oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html

页: [1]
查看完整版本: oracle技术之oracle手工完全恢复(一)