您好,欢迎访问一九零五行业门户网

RMAN备份与恢复之可脱机数据文件丢失

我们可以在sql plus中使users表空间离线,切记要先离线再进行下面的操作。因为在rman中我们有备份,所以我们可以在rman中对users
一 表空间讲解
在上一篇文章(rman备份与恢复之控制文件丢失   ),我们讲解了控制文件丢失并且rman中有备份怎么处理,这篇文章讲解可脱机数据文件丢失的处理。
表空间是一种逻辑结构,表空间下可以存放数据文件。表空间有系统表空间(system)、辅助表空间(sysaux)、用户表空间(users)、回退表空间(undotbs1)、临时表空间(temp)、测试表空间(example)、数据表空间。其中系统表空间用于存储数据字典的信息,不能脱机,不能只读,也不能改名。辅助表空间用于存储一些工具以及一些常用的组件,10g开始引入,不能脱机,可以只读,可以改名。用户表空间用于存储用户数据的表空间,可以脱机,可以只读,可以改名。回退表空间用于存储dml操作的事务信息,不能脱机,不能只读,可以改名。临时表空间用于存放临时数据,不能脱机,不能只读,可以改名。数据表空间用于存放自定义数据,项目中我们一般创建数据表空间,数据存放在数据表空间,这是一种很好的做法,切忌把数据放在默认的users表空间。
至于有些表空间可以脱机,有些不可以。那是因为数据库在运行期间需要向这些表空间写入数据,比如系统表空间、辅助表空间、回退表空间、临时表空间,而用户表空间、测试表空间、数据表空间不同,只要没有对这些表空间进行操作,是可以脱机的。
二 备份与恢复可脱机数据文件讲解
备份与恢复可脱机数据文件,首先我们要使用rman做一个备份全库的操作,然后模拟users表空间丢失,此时我们查看数据会提示数据文件找不到。因为users表空间可以脱机,所以我们可以在sql plus中使users表空间离线,切记要先离线再进行下面的操作。因为在rman中我们有备份,,所以我们可以在rman中对users表空间对应的数据文件编号进行还原,实际上后台就行进行了一个拷贝操作。还原成功后,我们需要对users表空间对应的数据文件编号进行恢复,等待恢复完成后,再在sql plus中使users表空间在线,所有的操作完成后,users表空间备份与恢复完成,我们可以对数据进行访问,测试是否恢复成功。需要注意的是,使表空间在线、离线、还原和恢复数据文件一些列的操作切记不要把编号弄错了,做这些操作应该确认users表空间的编号,默认是4号,但是由于后期的修改,users表空间数据文件的编号很不能不是4号。作为dba,需要时刻保持谨慎! 
三 模拟 
step1,rman中备份全库,并在sql plus确定数据的正确性
rman> backup database;
starting backup at 12-dec-13
using channel ora_disk_1
channel ora_disk_1: starting full datafile backup set
channel ora_disk_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/oracle/oradata/justdb/system01.dbf
input datafile file number=00002 name=/u01/oracle/oradata/justdb/sysaux01.dbf
input datafile file number=00003 name=/u01/oracle/oradata/justdb/undotbs01.dbf
input datafile file number=00004 name=/u01/oracle/oradata/justdb/users01.dbf
channel ora_disk_1: starting piece 1 at 12-dec-13
channel ora_disk_1: finished piece 1 at 12-dec-13
piece handle=/u01/oracle/fast_recovery_area/justdb/backupset/2013_12_12/o1_mf_nnndf_tag20131212t095816_9bl61rrn_.bkp tag=tag20131212t095816 comment=none
channel ora_disk_1: backup set complete, elapsed time: 00:00:25
channel ora_disk_1: starting full datafile backup set
channel ora_disk_1: specifying datafile(s) in backup set
including current control file in backup set
including current spfile in backup set
channel ora_disk_1: starting piece 1 at 12-dec-13
channel ora_disk_1: finished piece 1 at 12-dec-13
piece handle=/u01/oracle/fast_recovery_area/justdb/backupset/2013_12_12/o1_mf_ncsnf_tag20131212t095816_9bl62lw2_.bkp tag=tag20131212t095816 comment=none
channel ora_disk_1: backup set complete, elapsed time: 00:00:01
finished backup at 12-dec-13
[oracle@orcl backupset]$ ll 2013_12_12/
total 1025556
-rw------- 1 oracle oinstall    9830400 dec 12 09:58 o1_mf_ncsnf_tag20131212t095816_9bl62lw2_.bkp
-rw------- 1 oracle oinstall 1040334848 dec 12 09:58 o1_mf_nnndf_tag20131212t095816_9bl61rrn_.bkp
rman> list backup;
list of backup sets
===================
bs key  type lv size      device type elapsed time completion time
------- ---- -- ---------- ----------- ------------ ---------------
14      full    992.13m    disk        00:00:19    12-dec-13     
        bp key: 14  status: available  compressed: no  tag: tag20131212t095816
        piece name: /u01/oracle/fast_recovery_area/justdb/backupset/2013_12_12/o1_mf_nnndf_tag20131212t095816_9bl61rrn_.bkp
  list of datafiles in backup set 14
  file lv type ckp scn    ckp time  name
  ---- -- ---- ---------- --------- ----
  1      full 1088247    12-dec-13 /u01/oracle/oradata/justdb/system01.dbf
  2      full 1088247    12-dec-13 /u01/oracle/oradata/justdb/sysaux01.dbf
  3      full 1088247    12-dec-13 /u01/oracle/oradata/justdb/undotbs01.dbf
  4      full 1088247    12-dec-13 /u01/oracle/oradata/justdb/users01.dbf
bs key  type lv size      device type elapsed time completion time
------- ---- -- ---------- ----------- ------------ ---------------
15      full    9.36m      disk        00:00:01    12-dec-13     
        bp key: 15  status: available  compressed: no  tag: tag20131212t095816
        piece name: /u01/oracle/fast_recovery_area/justdb/backupset/2013_12_12/o1_mf_ncsnf_tag20131212t095816_9bl62lw2_.bkp
  spfile included: modification time: 12-dec-13
  spfile db_unique_name: justdb
  control file included: ckp scn: 1088267      ckp time: 12-dec-13
sql> conn scott/tiger;
connected.
sql> select * from tab;
其它类似信息

推荐信息