有限条件下怎样做好恢复演练

Posted by boypoo on May 24th, 2009

导语:最近频频听到有用户(还不是”客户” )存储出问题后无法恢复,只有求助于DUL、AUL、ODU之类的工具。本来嘛,在全球经济低迷的当下,有些需求总是好的,总可以增加点GDP。但,作为一个DBA来说,心里总怕有点不甘吧。出问题的用户里,有通信行业(南方北方都有)、有银行、有公安(网上搜也能搜到几个吧)、有社保………不一而足。我们知道这些行业里的用户,应该是比小沈阳更加不差钱的吧。谁说不是呢,但对于报表库、查询库之类动辄几T、几十T的“不太重要”的系统来说,要让领导投更多的钱,其实也还似乎比较难的。这篇,就是在投钱不多的情况下,怎样做到基本的备份,且能做到发生故障时能恢复之目的。

前提:做好备份;恢复测试机配置比较低(如果配置够的话不用这么麻烦)

版本:Oracle9i、10g测试通过。

原理:将更多的数据skip掉。(听起来有点类似于oracle exadata server ,其实不是。exadata是filter,而这里是skip)

废话少说。

第零步:启动数据库实例
第一步:恢复控制文件:

RMAN> restore controlfile from ‘F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORA11G\BACKUPSET\2008_10_23\O1_MF_NCSNF_TAG20081023T205321_4J0X8SY8_.BKP’;

Starting restore at 23-OCT-08
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=318 device type=DISK

channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
output file name=F:\APP\ADMINISTRATOR\ORADATA\ORA11G\CONTROL01.CTL
output file name=F:\APP\ADMINISTRATOR\ORADATA\ORA11G\CONTROL02.CTL
output file name=F:\APP\ADMINISTRATOR\ORADATA\ORA11G\CONTROL03.CTL
Finished restore at 23-OCT-08

第二步:mount数据库

RMAN> alter database mount;

database mounted
released channel: ORA_DISK_1

重点在
第三步:restore 数据库

RMAN> restore database skip forever tablespace xml,ttt,boypoo,t_4k,ILMTBS,users;

Starting restore at 23-OCT-08
Starting implicit crosscheck backup at 23-OCT-08
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=317 device type=DISK
Crosschecked 22 objects
Finished implicit crosscheck backup at 23-OCT-08

Starting implicit crosscheck copy at 23-OCT-08
using channel ORA_DISK_1
Crosschecked 2 objects
Finished implicit crosscheck copy at 23-OCT-08

searching for all files in the recovery area
cataloging files…
cataloging done
….(skip more data)

第五步:recover database

RMAN> recover database skip forever tablespace xml,ttt,boypoo,t_4k,ILMTBS,users;

Starting recover at 23-OCT-08
using channel ORA_DISK_1

starting media recovery
… …

第六步:open 数据库

RMAN> alter database open resetlogs;

database opened

这个时候,我们所skip的表空间里有些什么对象我们还是可以看到的,只不过数据没有。

验证:

SQL> select owner,table_name from dba_tables where tablespace_name=’USERS’;

OWNER TABLE_NAME
—————————— ——————————
SCOTT MLOG$_DEPT
SCOTT MLOG$_EMP
SCOTT A
SCOTT DEPT
SCOTT EMP
SCOTT BONUS
SCOTT SALGRADE
..
OWNER TABLE_NAME
—————————— ——————————
HIS T
ORA T
ORA SYS_IMPORT_SCHEMA_01

SQL> select count(1) from his.t;
select count(1) from his.t
*
ERROR at line 1:
ORA-00376: file 4 cannot be read at this time
ORA-01110: data file 4: ‘F:\APP\ADMINISTRATOR\ORADATA\ORA11G\USERS01.DBF’

Read the rest of this entry »

Transportable Tablespace Example

Posted by babyblue on May 23rd, 2009

OTN上有两张很好的图阐述了传输表空间的工作过程,分享如下:

xtts2

xtts3

Read the rest of this entry »

字节序(endianness)

Posted by babyblue on May 23rd, 2009

在进行跨平台数据迁移时,有时候会涉及endian、MSB、LSB等概念。

endian应该是由end衍变而来,窃译为“末端的(人)”。而endianness一词,维基百科译为字节序或者端序,在计算机科学中指存放多字节数据的字节(byte)顺序。endianness有时候也用做位(bit)序。

MSB是 most significant byte  的简写,意为最高有效位。LSB(least significant byte   )与其相对应,意为最低有效位。 Read the rest of this entry »

女儿4个月啦

Posted by admin on May 14th, 2009

hands_in_mouth2

还不会贴图哦3

上海 急聘 Oracle工程师

Posted by boypoo on May 14th, 2009

职责:
1.给客户提供Oracle技术支持工作 ,让客户认可您

基本条件:
1、有4年以上数据库维护经验,对Oracle数据库规划、优化及故障处理有丰富实践经验
2、熟悉2种以上UNIX操作系统(AIX, HP-UX, Linux, Solaris),对存储及网络有一定了解
3、熟悉RAC、DG、Partition
4、对oracle产品线有一定了解
5、良好的文档编写习惯
6、有较强的学习能力,很快地掌握新技术
7、有很好的职业道德及团队精神

这里有:
1.宽松的工作环境,良好的工作氛围
2.友好、协作、积极的团队
3.每年有Oracle、AIX、存储的培训机会

待遇十万年薪起,视能力而定

有意者请发简历到boypoo@gmail.com (希望您:1.不要用附件;2.在邮件标题上写上您的名字)

满足条件的请多多支持!

zhihong.org开张了

Posted by boypoo on May 14th, 2009

zhihong.org开张了!

首先感谢kamus提供的了空间。boypoo.loveunix.cn不能访问了,想上去写点啥居然也进不去了。刚好kamus发布free hosting的好消息,so………
再要感谢的是d.c.b.a, 他在跟我同居的时候就建议我注册了这个域名,所以现在可以很快的使用。

不能像袁岳那样每日一篇,争取每周一篇吧。否则不好意思再kamus这里住下去。


Copyright © 2007 数据工人. All rights reserved.