Oracle 备份恢复 31个实验 1-6
2012-10-07 12:23
239 查看
备份恢复实验之一(第一个实验会稍微细一点,有些步骤类似的下一个实验就不再详细操作)
USERS表空间在线损坏(在线损坏就是数据库open后的损坏)特别提示:为什么是USERS?不是其他表空间?这里只是举一个例子,就是某个放有数据的表空间即可,没有为什么。坏多个行不行?当然可以,这里只是做实验,生产环境就是这31个实验的结合,我们做实验当然是由简入深。
首先,确保数据库是open的状态。只要是“X”,就说明是open状态。
如图:
方法有多种,我全部演示一遍。
第一种:手工热备USER表空间,用HR用户在其上建一张表,并插入一些值。之后USERS表空间在线损坏。
手工热备USERS参考下图:
具体步骤:1.alter tablespace users begin backup;(以sys来做)
2.cp /u01/app/oracle/oradata/orcl/users01.dbf /home/oracle/user01_back.dbf
3.alter tablespace users end backup;
(手工热备很耗性能,cp完后,应快速end
backup,特别是在生产环境中!)
4.conn hr/hr
5.create table test1a(a varchar2(10))tablespace users;
6.insert into test1a values(‘liujie’);
7.commit;
模拟USERS表空间的损坏,先找到USERS表空间所在位置。
将它删除,即模拟它的损坏,生产环境rm –rf是非常危险的,应用
rm –i,就是在询问一遍,敲下y再删除。Linux不是windows,删了就是删了,回不来了,这里不讨论特殊的恢复工具。所以,备份重于一切啊,哥们!如图:
接下来,我们再查询一下hr.test1a这张表。竟然还在,表空间不是被删除了吗?OK,回答你!他缓在内存中了,要是windows这张表早不在了。清内存,生产环境禁止发这样的命令!!!如图:
再查,表没了。
OK,开始恢复。如图:
友情提示(恢复前一定要先将损坏的USERS表空间OFFLINE或者OFFLINE
IMMEDIATE(WINDOWS只能OFFLINE
IMMEDIATE,即就是不写“脏块”。)
再查,表回来了,恢复成功!
第二种:用rman热备的表空间恢复(什么?rman啥时热备过?看我之前的准备工作吧,那个时候就热备过了,大不了现在再热备一次啊)
具体步骤请看下图:
第三种:用手工冷备的表空间恢复(手工冷备一开始就做过了,没事啊,大不了现在关库,再手工冷备一下,再开库也行嘛)
第四种:用rman冷备的表空间恢复
首先rman如何冷备呢?
看图:
其次,可以采用偏方,之前不是做过手工的冷备吗?将它注册进rman不就成了rman的冷备了嘛~看图:
有人就想问了,你怎么知道它用的是冷备的备份?回答你,默认RMAN都是用最新的备份,还有,你看上图数据的路径,man_recovery_area不就是我们冷备的路径嘛~
之后的实验只采用一种方式,要采用其他方式可参考实验一,方法都是类似的。
备份恢复实验之二
下线USERS表空间损坏(就是USERS表空间OFFLINE的时候损坏)
已经做过了第一个实验了,想想看这个实验跟上一个实验在恢复上有什么差别?
这个实验我的理解是这样,我们做OFFLINE后再备份USERS表空间,然后再损坏。这样的区别就是,无需再recover,因为是下线坏,没有走日志,自然无需再recover一遍,当然你想再recover的话没人阻止你,只是不需要。然后再READ
WRITE,再查数据都在!你不这样理解也行,当然恢复过程跟上一个实验相同,这样就没有区别性了,明白?
可以按如下图的方法做:(尽量都用rman来做这样的实验,rman是一种趋势,不是趋势科技~)
备份恢复实验之三
只读USERS表空间损坏
恢复过程与实验二一模一样,这里只是做一个区分,让你明白他们的情况是一样的。
无需recover ,可直接online。
备份恢复实验之四
SYSTEM表空间在线损坏(与USERS表空间在线损坏一样,把它单独列出来是告诉你,SYSTEM表空间非常的重要!它上面放有数据字典信息!而且还有一点非常重要的,SYSTEM表空间无法OFFLINE或是OFFLINEIMMEDIATE,为什么?因为它非常重要,数据字典缓在内存中,能让你下线吗?当然不行,所以恢复过程需要经历一次重启到MOUNT状态,这就是与前面的实验最大的差别!!!)
不能IMMEDIATE就只好SHUTDOWNABORT了。
想尝试开启,看吧,开不起来了。
无需再ONLINE再开,因为SYSTEM本来就无法OFFLINE,它恢复完就是ONLINE的。
备份恢复实验之五
SYSTEM表空间离线损坏(上面不是说无法离线,而本实验是要离线损坏,怎么办?关机不就是离线嘛~)
备份恢复实验之六
tbsocp05_test没有备份的表空间损坏(神奇吧,这超出了你的想像,没有备份也能恢复!关键在于日志,特别是在线日志必须要在,否则神奇的事也无法发生,备份重于一切!)
额~折行~将就着看一下~
看出TBSOCP05_TEST是DATAFILE
6。
如果没有在线日志,这样的恢复不可能成功,Thomas Kyte来了也没用,所以,备份重于一切!不是“你一定要备份”,而是“你为什么不备份”!
相关文章推荐
- Oracle 备份恢复 31个实验 准备工作
- Oracle 备份恢复 31个实验 7-12
- Oracle 备份恢复 31个实验 13-18
- Oracle 备份恢复 31个实验 19-24
- Oracle 备份恢复 31个实验 25-31
- oracle: ocp题解与实验(5/205)
- 实验: Oracle事务(ITL)
- ORACLE异步写实验
- Oracle备份恢复:Rman Backup缓慢问题一例
- 虚拟机增加硬盘以及更改ORACLE DB_RECOVERY_FILE_DEST参数实验
- 用实验方法加深理解Oracle的外连接(left/right/full)和内连接(inner)
- Oracle 备份恢复概念
- oracle知识点实验,技术文章结构规划
- 采用Oracle Archive Log模式和非Archive Log模式对备份恢复的影响
- VirtualBox+RHEL5.5+Oracle 10G RAC安装实验--详细过程(三)
- oracle rman 实验(oracle rman Cumulative累积增量备份和恢复)
- oracle 11g dataguard 物理备份搭建实验
- 实验表时间点恢复(Oracle 12c新功能)
- oracle 11g dataguard 实验 (请下载附件)
- oracle 解锁、创建表空间及备份恢复