rman打开oracle归档⽇志,Oracle使⽤RMAN备份数据库⽂件和
归档⽇志
Oracle 使⽤RMAN备份数据库⽂件和归档⽇志
当数据库打开时,可以使⽤RMAN BACKUP命令备份如下对象:
l 数据库
l 表空间
l 数据⽂件
l 归档重做⽇志
l 控制⽂件
l 备份集file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
注 意BACKUP命令只能对数据⽂件、归档重做⽇志⽂件和控制⽂件进⾏备份,如果要对其他重要的数据⽂件进⾏备份,则可以在操作系统中对其进⾏物理备份。
在使⽤BACKUP命令备份数据⽂件时,可以为其设置参数,定义备份段的⽂件名,⽂件数和每个输⼊⽂件的通道。
1.备份数据库
如果备份操作是在数据库被安全关闭之后进⾏的,那么对整个数据库的备份是⼀致的;与之相对应,如果数据库是在打开状态下对整个数据库进⾏的备份,则该备份是⾮⼀致的。⾮⼀致性备份整个数据库的操作步骤如下:
(1)启动RMAN并连接到⽬标数据库,输⼊BACKUP DATABASE命令备份数据库。在BACKUP命令中可以指定FORMAT参数,为RMAN ⽣成的每个备份⽚段指定⼀个惟⼀的名称,以及存储的位置。
C:\>rman target system/admin nocatalog
RMAN> backup database format 'f:\oracle_backup\ora11g_%Y_%M_%D_%U.bak' maxsetsize=2G;
还可以为BACKUP命令指定TAG参数,为备份⽚段定义备份标签。例如:
RMAN>backup database tag='weekly_backup';
(2)如果建⽴的是⾮⼀致性备份,那么必须在完成备份后对当前的联机重做⽇志进⾏归档,因为在使⽤备份恢复数据库需要使⽤当前重做⽇志中的重做记录。
RMAN>sql'alter system archive log current';
(3)在RMAN中执⾏LIST BACKUP OF DATABASE命令,查看建⽴的备份集与备份⽚段的信息。
RMAN> list backup of database;
如果需要对整个数据库进⾏⼀致性备份,则⾸先需要关闭数据库,并启动数据库到MOUNT状态。例如:
RMAN>shutdown immediate
RMAN>startup mount
RMAN>backup database format='f:\oracle_backup\%d_%s.bak';
RMAN>alter database open;
如果想要对某个表空间以外的整个数据库进⾏备份,则可以使⽤⽤如下⼀组命令:
//设定在备份数据库的时候排除USER01;
RMAN>configure exclude for tablespace user01;
RMAN>backup database format=' f:\oraclebackup \%d_%s.bak';
RMAN>sql 'alter system archive log current';
oracle数据库自动备份方法2.备份表空间
当数据库打开或关闭时,RMAN还可以对表空间进⾏备份。但是,所有打开的数据库备份都是⾮⼀致的。如果在RMAN中对联机表空间进⾏备份,则不需要在备份前执⾏ALTER TABLESPACE … BEGIN BACKUP语句将表空间设置为备份模式。
执⾏表空间备份的具体步骤如下:
(1)启动RMAN并连接到⽬标数据库,在RMAN命令提⽰符中执⾏BACKUP TABLESPACE命令。例如,下⾯的⽰例将使⽤⼿动分配的通道对两个表空间进⾏备份:
C:\>rman target system/admin nocatalog
RMAN> run{
2> allocate channel ch1 type disk;
3> backup tablespace example,user01
4> format 'f:\oracle_backup\%d_%p_%t_%c.dbf';
5> }
(2)执⾏LIST BACKUPOF TABLESPACE命令查看建⽴的表空间备份信息。
RMAN> list backup of tablespace example,user01;
3.备份数据⽂件及数据⽂件的复制⽂件
在RMAN中可以使⽤BACKUPDATAFILE命令可以对单独的数据⽂件进⾏备份,备份数据⽂件时即可以使⽤其名称指定数据⽂件,也可以使⽤其在数据库中的编号指定数据⽂件。另外,还可以使⽤BACKUP DATAFILECOPY命令备份数据⽂件复件。
备份数据⽂件及数据⽂件的复制⽂件语法为:
RMAN> backup datafile 1,2,3 filesperset 3;
RMAN>backup datafilecopy '\oracle_backup\p';
查看备份结果:
RMAN>list backup of datafile 1,2,3;
4.备份控制⽂件
在RMAN中对控制⽂件进⾏备份的⽅法有很多中,最简单的⽅法是设置CONFIGURE CONTROLFILE AUTOBACKUP 为ON,这样将启动RMAN的⾃动备份功能。启动控制⽂件的⾃动备份功能后,当在RMAN中执⾏BACKUP或COPY命令后,RMAN都会对控制⽂件进⾏⼀次⾃动备份。
如果没有启动⾃动备份功能,那么必须利⽤⼿动⽅式对控制⽂件进⾏备份。⼿动备份控制⽂件的⽅法有如下⼏种:
RMAN>backup current controlfile;
RMAN>backup tablespace users include currentcontrolfile;
在完成对数据库⽂件的备份后,可以利⽤LIST BACKUP OF CONTROLFILE命令来查看包含控制⽂件的备份集与备份段的信息。例如:
RMAN>list backup of controlfile;
5.备份归档重做⽇志
归档重做⽇志是成功进⾏介质恢复的关键,需要周期性进⾏备份。在RMAN中,可以使⽤BACKUPARCHIVELOG命令对归档重做⽇志⽂件时进⾏备份,或者使⽤BACKUP PLUS ASRCHIVELOG命令,在对数据⽂件、控制⽂件进⾏备份同时备份。
当使有BACKUP ARCHIVELOG命令来对归档重做⽇志⽂件进⾏备份时,备份的结果为⼀个归档重做⽇志备份集。如果将重做⽇志⽂件同时归档到多个归档⽬标中,RMAN并不会在同⼀个备份集中包含具有相同⽇志序列号的归档重做⽇志⽂件,⼀般情况下,BACKUP ARCHIVELOG ALL命令会对不同⽇志序列号备份⼀个复件。
可以在BACKUP命令中定义DELETEINPUT参数,在备份以后删除归档⽇志。这样,管理员可以将归档⽇志备份到磁带上,并清际磁盘上旧的⽇志。如果定义了DELETE ALL INPUT参数,则RMAN对每个特定的⽇志序列执⾏备份,同时删除备份的归档重做⽇志。
使⽤BACKUP ARCHIVELOG命令备份归档重做⽇志的步骤如下:
(1)启动RMAN后,在RMAN命令提⽰中运⾏BACKUP ARCHIVELOG命令,下⾯的⽰例将使⽤配置的通道备份归档⽇志到磁带上,并删除磁盘上的所有复件。
RMAN> backup archivelog all delete all input;
在使⽤BACKUP ARCHIVELOG ALL命令进⾏备份时,RMAN会在备份过程中进⾏⼀次⽇志切换,因此备份集中将包含当前联机重做⽇志。
需要注意,在备份归档⽇志时,还可以限制备份的归档重做⽇志⽂件的范围。可以指定的范围包括:时间范围、顺序号范围或SCN范围。例如,下⾯的语句将对⼀周前⽣成的归档⽇志⽂件进⾏备份:
RMAN> backup archivelog from time 'sysdate-8'
2> until time 'sysdate-1';
(2)可以使⽤LISTBACKUP OF ARCHIVELOG ALL命令,查看包含归档重做⽇志⽂件的备份集与备份⽚段信息。
RMAN> list backup of archivelog all;
在对数据库、控制⽂件或其他数据库对象进⾏备份时,如果在BACKUP命令中指定了PLUSARCHIVELOG参数,也可以同时对归档重做⽇志⽂件进⾏备份。例如,下⾯的语句在备份整个数据库时对归档重做⽇志⽂件进⾏备份:
backup database plus archivelog;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论