七. 联机RMAN 数据库备份
7.1 联机数据库备份
要使用RMAN执行联机备份操作,数据库必须置于Archivelog 模式。 如果不在归档模式,则尝试联机备份时RMAN就会生成一个错误。
Oracle 归档与非归档的切换
http://blog.csdn.net/tianlesoftware/archive/2009/10/19/4693470.aspx
连接备份示例:
RMAN> Configure default device type to disk;
RMAN> configure channel 1 device type disk format 'F:/backup/orcl_%U.bak';
RMAN> backup database plus archivelog tag='ORCL';
7.2 表空间备份
可以简单的使用具有tablespace 参数的backup 命令来执行一个表空间的备份操作:
Backup tablespace dave;
如果同时要备份归档的重做日志,可以执行:
Backup tablespace dave plus archivelog;
我们要确保备份的是当前的控制文件:
Backup tablespace users include current controlfile plus archivelog;
7.3 数据文件备份
RMAN 允许使用带有datafile 参数的backup 命令来备份数据文件,datafile 参数后面是要备份的文件名或数据文件号。
查看数据文件号:
SQL> select file_id,file_name from dba_data_files;
FILE_ID FILE_NAME
---------- -----------------------------------------------------
4 D:/APP/ADMINISTRATOR/ORADATA/ORCL/USERS01.DBF
3 D:/APP/ADMINISTRATOR/ORADATA/ORCL/UNDOTBS01.DBF
2 D:/APP/ADMINISTRATOR/ORADATA/ORCL/SYSAUX01.DBF
1 D:/APP/ADMINISTRATOR/ORADATA/ORCL/SYSTEM01.DBF
5 D:/APP/ADMINISTRATOR/ORADATA/ORCL/DAVE0.DBF
备份:
RMAN>Backup datafile 5;
RMAN>Backup datafile 'D:/APP/ADMINISTRATOR/ORADATA/ORCL/DAVE0.DBF';
RMAN>Backup datafile 'D:/APP/ADMINISTRATOR/ORADATA/ORCL/DAVE0.DBF' plus archivelog;
7.4 归档的重做日志备份
要备份所有的归档重做日志,可以用backup archivelog all. 还可以备份指定范围内的归档的重做日志,这里有多个选项,包括时间,SCN或者重做
日志序列。
Backup archivelog all;
Backup archivelog from time 'sysdate-1';
Backup archivelog from sequence 400;
一旦备份完成,就可以使用RMAN的 Delete input 选项来删除这些归档重做日志。
Backup archivelog all delete input;
Backup archivelog from sequence 400 delete input;
也可以指示RMAN 备份归档的重做日志多个副本。 在下面的示例中,我们使用具有not backed up n times 参数的backup命令来确保至少备份3次重做
日志,并且不会再次备份已经备份超过3次的归档重做日志。
Backup archivelog not backed up 3 times;
还可以使用backup 与until time 参数来确保归档重做日志在磁盘上保留一定的天数:
Backup archivelog all delete input until time 'sysdate-2';
注: not backed up 参数和 delete input 参数相互排斥,不管归档重做日志的备份次数为多少,delete input 参数都会删除这个归档的重做日志
。
7.5 控制文件和服务器参数文件备份
使用backup spfile 命令可以备份服务器参数文件。
Backup current controlfile;
Current controlfile 参数还提供一个for standby子句,这个子句会创建一个备用数据库要用的备份控制文件。可以使用backup 命令的
controlfilecopy 参数来创建一个含有外部创建的控制文件备份的备份集,执行alter database backup controlfile to ' filename' 命令或者RMAN
的copy 命令可以创建备用的数据库控制文件。 此外,还可以备份由alter database create standby controlfile 命令创建的备用数据库控制文件
,该功能的有点在于可以使用外部控制文件备份文件,在RMAN中注册这些文件,然后创建一个含有控制文件备份的备份集。
Alter database backup controlfile to 'd:/backup/orcl_backup.ctl';
Backup controlfilecopy 'd:/backup/orcl_backup.ctl';
7.6 备份集备份
我们可能现在磁盘上备份数据,然后在磁带上备份备份集。 在Oracle 10g中,RMAN 通过backup 命令支持这种操作。
使用backup backupset 命令可以选择备份所有备份集,也可以选择备份特定的备份集。另外,只能将备份集从磁盘备份到磁盘,或者将备份集从磁盘
备份到磁带。在备份备份集中,可以使用delete input 选项在备份操作成功后删除源备份集的文件。
Backup backupset all;
Backup backupset all format='d:/backup/orcl_%U.bak' tag='ORCL' channel 'ORA_DISK_1';
Backup backupset complete before 'sysdate-2';
Backup backupset complete before 'sysdate-2' delete input;
Backup backupset complete after 'sysdate-2' delete input;
7.7 闪回恢复区备份
RMAN 提供了对backup recovery area 命令将整个FRA备份到磁盘的功能,但并不是FRA中所有的文件都备份,备份文件包括:完整的备份集 和 增量
备份集,控制文件自动备份,归档日志 和 数据文件副本。 如果备份的FRA中包含闪回日志,当前的控制文件以及联机重做日志,则不会备份这些文
件。 注意,必须将这些文件备份到磁带上。
oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html