Oracle RMAN-备份集和镜像备份
使用增量备份的是数据文件,控制文件和参数文件。没有备份的文件是口令文件,重做日志文件和归档日志文件。口令文件是不需要备份的,因为口令文件是可以通过orpw这个命令来创建一个新的口令文件,rman不可以对redo log文件进行备份,不过rman可以对归档日志文件做备份。(口令文件是没有必要备份的,重做日志文件是无法备份的)
在备份archivelog的时候,delete input可以省了不写。
RMAN> connect target sys/[email protected]_TNSNAMES;
connected to target database: ORADB (DBID=2714559576)
using target database control file instead of recovery catalog
用户名加上密码加上TNS就行了,就可以使用RMAN工具连接到数据库。
如果在connect target /提示数据库没有启动,可以在RMAN下面使用startup启动数据库。
RMAN> backup database plus archivelog delete input;
Starting backup at 11-DEC-17
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1 device type=DISK
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=33 RECID=1 STAMP=962300512
input archived log thread=1 sequence=34 RECID=2 STAMP=962300559
input archived log thread=1 sequence=35 RECID=3 STAMP=962305051
input archived log thread=1 sequence=36 RECID=4 STAMP=962305073
input archived log thread=1 sequence=37 RECID=5 STAMP=962305082
input archived log thread=1 sequence=38 RECID=6 STAMP=962305086
input archived log thread=1 sequence=39 RECID=7 STAMP=962305097
input archived log thread=1 sequence=40 RECID=8 STAMP=962305112
input archived log thread=1 sequence=41 RECID=9 STAMP=962305182
input archived log thread=1 sequence=42 RECID=10 STAMP=962305190
input archived log thread=1 sequence=43 RECID=11 STAMP=962305212
input archived log thread=1 sequence=44 RECID=12 STAMP=962305239
input archived log thread=1 sequence=45 RECID=13 STAMP=962305259
input archived log thread=1 sequence=46 RECID=14 STAMP=962305268
input archived log thread=1 sequence=47 RECID=15 STAMP=962305320
input archived log thread=1 sequence=48 RECID=16 STAMP=962305346
input archived log thread=1 sequence=49 RECID=17 STAMP=962305374
input archived log thread=1 sequence=50 RECID=18 STAMP=962305391
input archived log thread=1 sequence=51 RECID=19 STAMP=962305644
input archived log thread=1 sequence=52 RECID=20 STAMP=962316017
input archived log thread=1 sequence=53 RECID=21 STAMP=962432124
input archived log thread=1 sequence=54 RECID=22 STAMP=962438810
channel ORA_DISK_1: starting piece 1 at 11-DEC-17
channel ORA_DISK_1: finished piece 1 at 11-DEC-17
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/03slr9kq_1_1 tag=TAG20171211T080650 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:16
channel ORA_DISK_1: deleting archived log(s)
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_33_961294808.dbf RECID=1 STAMP=962300512
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_34_961294808.dbf RECID=2 STAMP=962300559
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_35_961294808.dbf RECID=3 STAMP=962305051
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_36_961294808.dbf RECID=4 STAMP=962305073
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_37_961294808.dbf RECID=5 STAMP=962305082
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_38_961294808.dbf RECID=6 STAMP=962305086
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_39_961294808.dbf RECID=7 STAMP=962305097
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_40_961294808.dbf RECID=8 STAMP=962305112
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_41_961294808.dbf RECID=9 STAMP=962305182
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_42_961294808.dbf RECID=10 STAMP=962305190
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_43_961294808.dbf RECID=11 STAMP=962305212
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_44_961294808.dbf RECID=12 STAMP=962305239
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_45_961294808.dbf RECID=13 STAMP=962305259
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_46_961294808.dbf RECID=14 STAMP=962305268
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_47_961294808.dbf RECID=15 STAMP=962305320
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_48_961294808.dbf RECID=16 STAMP=962305346
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_49_961294808.dbf RECID=17 STAMP=962305374
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_50_961294808.dbf RECID=18 STAMP=962305391
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_51_961294808.dbf RECID=19 STAMP=962305644
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_52_961294808.dbf RECID=20 STAMP=962316017
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_53_961294808.dbf RECID=21 STAMP=962432124
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_54_961294808.dbf RECID=22 STAMP=962438810
Finished backup at 11-DEC-17
Starting backup at 11-DEC-17
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/oradb/system01.dbf
input datafile file number=00002 name=/u01/app/oracle/oradata/oradb/sysaux01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/oradb/undotbs01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/oradb/user01.dbf
channel ORA_DISK_1: starting piece 1 at 11-DEC-17
channel ORA_DISK_1: finished piece 1 at 11-DEC-17
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/04slr9n6_1_1 tag=TAG20171211T080806 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:36
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 11-DEC-17
channel ORA_DISK_1: finished piece 1 at 11-DEC-17
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/05slr9oa_1_1 tag=TAG20171211T080806 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 11-DEC-17
Starting backup at 11-DEC-17
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=55 RECID=23 STAMP=962438924
channel ORA_DISK_1: starting piece 1 at 11-DEC-17
channel ORA_DISK_1: finished piece 1 at 11-DEC-17
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/06slr9od_1_1 tag=TAG20171211T080844 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
channel ORA_DISK_1: deleting archived log(s)
archived log file name=/u01/app/oracle/product/11.2.0/db_1/dbs/arch1_55_961294808.dbf RECID=23 STAMP=962438924
Finished backup at 11-DEC-17
[[email protected] admin]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs
[[email protected] dbs]$ ls
01slr3ig_1_1 03slr9kq_1_1 05slr9oa_1_1 hc_oradb.dat initoradb.ora orapworadb spfileoradb.ora
02slr3jj_1_1 04slr9n6_1_1 06slr9od_1_1 init.ora lkORADB snapcf_oradb.f
通过list backupset查看备份信息。
BS Key Size Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
3 750.46M DISK 00:01:13 11-DEC-17
BP Key: 3 Status: AVAILABLE Compressed: NO Tag: TAG20171211T080650
Piece Name: /u01/app/oracle/product/11.2.0/db_1/dbs/03slr9kq_1_1
List of Archived Logs in backup set 3
Thrd Seq Low SCN Low Time Next SCN Next Time
---- ------- ---------- --------- ---------- ---------
1 33 494278 06-DEC-17 531666 09-DEC-17
1 34 531666 09-DEC-17 536436 09-DEC-17
1 35 536436 09-DEC-17 556011 09-DEC-17
1 36 556011 09-DEC-17 566725 09-DEC-17
1 37 566725 09-DEC-17 568106 09-DEC-17
1 38 568106 09-DEC-17 569062 09-DEC-17
1 39 569062 09-DEC-17 570904 09-DEC-17
1 40 570904 09-DEC-17 584726 09-DEC-17
1 41 584726 09-DEC-17 607266 09-DEC-17
1 42 607266 09-DEC-17 616157 09-DEC-17
1 43 616157 09-DEC-17 622825 09-DEC-17
1 44 622825 09-DEC-17 627079 09-DEC-17
1 45 627079 09-DEC-17 628926 09-DEC-17
1 46 628926 09-DEC-17 633405 09-DEC-17
1 47 633405 09-DEC-17 640756 09-DEC-17
1 48 640756 09-DEC-17 646157 09-DEC-17
1 49 646157 09-DEC-17 654186 09-DEC-17
1 50 654186 09-DEC-17 657002 09-DEC-17
1 51 657002 09-DEC-17 664518 09-DEC-17
1 52 664518 09-DEC-17 686824 09-DEC-17
1 53 686824 09-DEC-17 711635 11-DEC-17
1 54 711635 11-DEC-17 718025 11-DEC-17
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
4 Full 427.45M DISK 00:00:33 11-DEC-17
BP Key: 4 Status: AVAILABLE Compressed: NO Tag: TAG20171211T080806
Piece Name: /u01/app/oracle/product/11.2.0/db_1/dbs/04slr9n6_1_1
List of Datafiles in backup set 4
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 718123 11-DEC-17 /u01/app/oracle/oradata/oradb/system01.dbf
2 Full 718123 11-DEC-17 /u01/app/oracle/oradata/oradb/sysaux01.dbf
3 Full 718123 11-DEC-17 /u01/app/oracle/oradata/oradb/undotbs01.dbf
4 Full 718123 11-DEC-17 /u01/app/oracle/oradata/oradb/user01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
5 Full 9.52M DISK 00:00:01 11-DEC-17
BP Key: 5 Status: AVAILABLE Compressed: NO Tag: TAG20171211T080806
Piece Name: /u01/app/oracle/product/11.2.0/db_1/dbs/05slr9oa_1_1
SPFILE Included: Modification time: 11-DEC-17
SPFILE db_unique_name: ORADB
Control File Included: Ckp SCN: 718135 Ckp time: 11-DEC-17
BS Key Size Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
6 119.00K DISK 00:00:00 11-DEC-17
BP Key: 6 Status: AVAILABLE Compressed: NO Tag: TAG20171211T080844
Piece Name: /u01/app/oracle/product/11.2.0/db_1/dbs/06slr9od_1_1
List of Archived Logs in backup set 6
Thrd Seq Low SCN Low Time Next SCN Next Time
---- ------- ---------- --------- ---------- ---------
可以看到上面对数据文件,参数文件,控制文件,归档文件都做了备份。
Rman可以备份表空间,也可以备份控制文件。
如果不知道有多少表空间,可以使用
RMAN> report schema;
Report of database schema for database with db_unique_name ORADB
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1 500 SYSTEM *** /u01/app/oracle/oradata/oradb/system01.dbf
2 325 SYSAUX *** /u01/app/oracle/oradata/oradb/sysaux01.dbf
3 200 UNDOTBS1 *** /u01/app/oracle/oradata/oradb/undotbs01.dbf
4 100 USERSPACE *** /u01/app/oracle/oradata/oradb/user01.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1 20 TEMP 20 /u01/app/oracle/oradata/oradb/temp01.dbf
RMAN> backup tablespace USERSPACE; 备份表空间
Starting backup at 11-DEC-17
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00004 name=/u01/app/oracle/oradata/oradb/user01.dbf
channel ORA_DISK_1: starting piece 1 at 11-DEC-17
channel ORA_DISK_1: finished piece 1 at 11-DEC-17
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/07slrag6_1_1 tag=TAG20171211T082126 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 11-DEC-17
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
7 Full 2.15M DISK 00:00:00 11-DEC-17
BP Key: 7 Status: AVAILABLE Compressed: NO Tag: TAG20171211T082126
Piece Name: /u01/app/oracle/product/11.2.0/db_1/dbs/07slrag6_1_1
List of Datafiles in backup set 7
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
4 Full 718584 11-DEC-17 /u01/app/oracle/oradata/oradb/user01.dbf(因为表空间只有一个数据文件,所以只备份表空间里面的该文件)
如果只备份当前的控制文件那么就使用
backup current controlfile;(就是拿出单独的控制文件来备份)
如果要在备份整个数据库的时候要备份控制文件可以使用
backup database include current controlfile;
做了三次全备份,那么这些备份集都在硬盘上面,那么在恢复的时候Oracle会自动的选取最新的备份集进行恢复。
在RMAN备份的时候有两种方式,一种是backupset,一种是镜像备份,上面的都是备份集备份。
镜像备份就相当于拷贝。
RMAN> copy datafile 4 to '/oracletmp/test.dbf';
Starting backup at 11-DEC-17
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=/u01/app/oracle/oradata/oradb/user01.dbf
output file name=/oracletmp/test.dbf tag=TAG20171211T084236 RECID=2 STAMP=962440961
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:08
Finished backup at 11-DEC-17
[[email protected] dbs]# ls /oracletmp/
human_resources human_resources.zip test.dbf
通过list backupset会发现不会出现刚刚备份的信息,因为不是使用备份集进行备份的,是使用镜像进行备份的。可以通过list copy来查看。
RMAN> list copy;
specification does not match any archived log in the repository
List of Datafile Copies
=======================
Key File S Completion Time Ckp SCN Ckp Time
------- ---- - --------------- ---------- ---------------
2 4 A 11-DEC-17 719519 11-DEC-17
Name: /oracletmp/test.dbf
Tag: TAG20171211T084236