eygle.com   eygle.com
eygle.com eygle
eygle.com  
 

« Oracle10gR2中的Mutex竞争的案例 | Blog首页 | 史上最强黑屏行动-微软20日黑屏反盗版验证 »

使用RMAN进行排除表空间备份
modb.pro

在RMAN的备份中,可以通过Exclude命令排除某些不需要备份的表空间。
这样可以缩减备份的容量,对备份进行适当优化和调整。

排除某个表空间可以使用类似如下命令:
configure exclude for tablespace users;

其设置可以在RMAN中通过show exclude命令来查看。
如果将来想临时增加排除表空间的备份,可以通过以下命令实现:
backup database noexclude;

如果想取消排除设置则可以使用如下命令:
CONFIGURE EXCLUDE FOR TABLESPACE users CLEAR;

此外常用的排除备份命令还有:
BACKUP DATABASE SKIP READONLY, SKIP OFFLINE;

以下是一个简单的测试过程。
执行备份:

[oracle@test126 udump]$ rman target /

Recovery Manager: Release 10.2.0.1.0 - Production on Mon Oct 9 06:47:19 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.

connected to target database: EYGLE (DBID=2590148133)

RMAN> configure exclude for tablespace users;

using target database control file instead of recovery catalog
tablespace USERS will be excluded from future whole database backups
new RMAN configuration parameters are successfully stored

RMAN> backup full database;

Starting backup at 09-OCT-06
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=527 devtype=DISK
file 4 is excluded from whole database backup
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00001 name=/opt/oracle/oradata/eygle/system01.dbf
input datafile fno=00003 name=/opt/oracle/oradata/eygle/sysaux01.dbf
input datafile fno=00002 name=/opt/oracle/oradata/eygle/undotbs01.dbf
channel ORA_DISK_1: starting piece 1 at 09-OCT-06
channel ORA_DISK_1: finished piece 1 at 09-OCT-06
piece handle=/opt/oracle/flash_recovery_area/EYGLE/backupset/2006_10_09/o1_mf_nnndf_TAG20061009T070612_2lm135od_.bkp tag=TAG20061009T070612 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:48
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current control file in backupset
channel ORA_DISK_1: starting piece 1 at 09-OCT-06
channel ORA_DISK_1: finished piece 1 at 09-OCT-06
piece handle=/opt/oracle/flash_recovery_area/EYGLE/backupset/2006_10_09/o1_mf_ncnnf_TAG20061009T070612_2lm14ppc_.bkp tag=TAG20061009T070612 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 09-OCT-06

RMAN> exit


Recovery Manager complete.

然后关闭数据库,我们可以进行一次恢复尝试:

[oracle@test126 udump]$ sqlplus "/ as sysdba"

SQL*Plus: Release 10.2.0.1.0 - Production on Mon Oct 9 07:07:28 2006

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


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning and Data Mining options

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/opt/oracle/oradata/eygle/system01.dbf
/opt/oracle/oradata/eygle/undotbs01.dbf
/opt/oracle/oradata/eygle/sysaux01.dbf
/opt/oracle/oradata/eygle/users01.dbf

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning and Data Mining options

看看恢复进程:

[oracle@test126 udump]$ rman target /

Recovery Manager: Release 10.2.0.1.0 - Production on Mon Oct 9 07:08:40 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.

connected to target database (not started)

RMAN> startup mount;

Oracle instance started
database mounted

Total System Global Area 536870912 bytes

Fixed Size 1220460 bytes
Variable Size 150995092 bytes
Database Buffers 377487360 bytes
Redo Buffers 7168000 bytes

RMAN> restore database;

Starting restore at 09-OCT-06
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=542 devtype=DISK

file 4 is excluded from whole database backup
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /opt/oracle/oradata/eygle/system01.dbf
restoring datafile 00002 to /opt/oracle/oradata/eygle/undotbs01.dbf
restoring datafile 00003 to /opt/oracle/oradata/eygle/sysaux01.dbf
channel ORA_DISK_1: reading from backup piece /opt/oracle/flash_recovery_area/EYGLE/backupset/2006_10_09/o1_mf_nnndf_TAG20061009T070612_2lm135od_.bkp
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/oracle/flash_recovery_area/EYGLE/backupset/2006_10_09/o1_mf_nnndf_TAG20061009T070612_2lm135od_.bkp tag=TAG20061009T070612
channel ORA_DISK_1: restore complete, elapsed time: 00:00:36
failover to previous backup

Finished restore at 09-OCT-06

RMAN> recover database;

Starting recover at 09-OCT-06
using channel ORA_DISK_1

starting media recovery
media recovery complete, elapsed time: 00:00:02

Finished recover at 09-OCT-06

RMAN> alter database open;

database opened

RMAN>

但是需要注意,如果未备份的表空间文件丢失,不可恢复,你可能需要重建以还原数据库。


历史上的今天...
    >> 2010-10-15文章:
    >> 2006-10-15文章:
    >> 2004-10-15文章:
           关于PUSH_SUBQ提示的说明
           Dataguard配置Step by Step

By eygle on 2008-10-15 15:01 | Comments (0) | Backup&Recovery | 2059 |


CopyRight © 2004~2020 云和恩墨,成就未来!, All rights reserved.
数据恢复·紧急救援·性能优化 云和恩墨 24x7 热线电话:400-600-8755 业务咨询:010-59007017-7040 or 7037 业务合作: marketing@enmotech.com