Data Grand恢复问题

两台机器做的DG, 现在数据库备份跑着增量,和周六全备。同时也备份了归档日志。现在问题是把备份都放到了磁盘阵列中,再从磁盘阵列中备份到磁带上,备份到磁带上以后,磁盘里的信息就会被删除。如果要恢复,只能全部对数据库恢复,即把原先磁带上的文件拷贝到相应磁盘的目录中。在进行全库恢复。我想问一下,如果是一个表空间损坏,基于这种情况怎么恢复那?什么命令?


Recovery Manager: Release 11.1.0.7.0 - Production on Fri Dec 17 11:17:13 2010

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: ESPACE (DBID=2219199537)

RMAN>
using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name ESPACE are:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 180 DAYS;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO 'SBT_TAPE';
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/ora_arch/controlfileback/controlfile_%F';
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE 'SBT_TAPE' TO '%F';
CONFIGURE DEVICE TYPE SBT_TAPE PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BZIP2'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/opt/oracle/app/product/11g/db/dbs/snapcf_eSpace.f'; # default

RMAN> 2>




现在还就是公司使用这一个叫Netbackup (NBU)的备份工具,有哪位大师用过这种工具,有没有专门通过NBU工具来恢复表空间的命令哪?
标签: 暂无标签
lllzd

写了 9 篇文章,拥有财富 71,被 3 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

P6 | 发表于 2010-12-19 17:24:13
你的备份分为两个阶段:
1、备份数据库
2、备份文件系统
各个阶段分别使用的是什么工具?都是nbu吗?
回复

使用道具

P4 | 发表于 2010-12-19 18:57:59
本帖最后由 lllzd 于 2010-12-19 19:42 编辑

老师说的文件系统是指OS上的吗?我们用的是ATAE上的部署服务器上的镜像备份。数据库备份都是nbu备份,因为nbu也是使用RMAN来备份的,我现在需求是使用RMAN来恢复一个表空间,从磁带库上直接把备份拉过来恢复,老师请看命令对否?
数据库版本ORACLE 11G

表空间备份恢复测试
        1 数据库系统表空间损坏
        如果数据库系统表空间突然损坏,只能先将数据库启动到mount状态,然后进行数据文件级别的恢复操作,如下
        RMAN> RUN
{
SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE 'SBT_TAPE' TO '%F';
ALLOCATE CHANNEL ch00 DEVICE TYPE 'SBT_TAPE';           --这个ch00是不是需要根据之前设置好的通道编号来命名的
RESTORE DATAFILE 1 ;
RECOVER DATAFILE 1;
RELEASE CHANNEL ch00;                                                      --还是只要是指向磁带的通道都是这个名字?
}

        2 数据库某个数据文件丢失
那么先要在OPEN状态下使用SQL语句ALTER DATABASE DATAFILE ..OFFLINE 脱机丢失的数据文件,接着使用RESTORE DATAFILE命令转储数据文件,在使用RECOVER DATAFILE命令应用归档日志,最后使用SQL语句ALTER DATABASE DATAFILE..ONLINE使数据文件联机。
RMAN> RUN
{
SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE 'SBT_TAPE' TO '%F';
ALLOCATE CHANNEL ch00 DEVICE TYPE 'SBT_TAPE';
SQL ‘ALTER DATABASE DATAFILE 4 OFFLINE’;
RESTORE DATAFILE 4;
RECOVER DATAFILE 4;
SQL’ALTER DATABASE DATAFILE 4 ONLINE’;
RELEASE CHANNEL ch00;
}

        3  数据库表空间的数据文件丢失
        如果生产表空间的所有数据文件全部丢失,那么要先在OPEN状态下使用SQL语句ALTER TABLESPACE..OFFLINE FOR RECOVER 脱机表空间,接着使用RESTORE TABLESPACE命令转储表空间的所有数据文件,在使用RECOVER TABLESPACE命令应用归档日志,最后使用SQL语句ALTER TABLESPACE..ONLINE是表空间联机,这里拿EBMS表空间举例子。
        RMAN> RUN
{
SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE 'SBT_TAPE' TO '%F';
ALLOCATE CHANNEL ch00 DEVICE TYPE 'SBT_TAPE';
SQL ‘ALTER TABLESPACE EBMS OFFLINE FOR RECOVER’;
RESTORE TABLESPACE EBMS;
RECOVER TABLESPACE EBMS;
SQL’ALTER TABLESPACE EBMS ONLINE’;
RELEASE CHANNEL ch00;
}


回复

使用道具

P4 | 发表于 2010-12-20 08:45:33
本帖最后由 lllzd 于 2010-12-20 21:46 编辑

请解答
回复

使用道具

P4 | 发表于 2010-12-21 07:54:09
顶一下。
回复

使用道具

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈