登录
rman target /
归档模式下可以执行联机备(热备份)
备份整个数据库
RAMN>backup database;
分析打印出来的日志
#在默认的情况下, Oracle采用的是【backup set】,即通过【备份集】备份数据
channel ORA_DISK_1: starting full datafile backup set
#piece:备份片。
#备份集由备份片组成。
channel ORA_DISK_1: starting piece 1 at 11-OCT-23、
#使用目标数据库控制文件而不是恢复目录
using target database control file instead of recovery catalog
#以下这些数据文件原信息会写在控制文件当中control file
input datafile file number=00001 name=/u01/app/oracle/oradata/ORCL/system01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/ORCL/sysaux01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/ORCL/undotbs01.dbf
input datafile file number=00017 name=/u01/app/oracle/oradata/ORCL/test.dbf
input datafile file number=00007 name=/u01/app/oracle/oradata/ORCL/users01.dbf
#备份完成
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
#如果没有指定备份的存放目录
#Oracle会默认把备份集放在【快速恢复区】下,即默认保存目录为【fast_recovery_area】这个目录下
piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2023_10_11/o1_mf_nnndf_TAG20231011T065411_llcojmom_.bkp tag=TAG20231011T065411 comment=NONE
备份指定参数—指定路径
#先在根目录创建指定mkdir目录
[oracle@localhost root]$ cd ~
[oracle@localhost ~]$ ls
dbca_kfc.rsp dbca.rsp
[oracle@localhost ~]$mkdirbackup
[oracle@localhost ~]$ mkdir backup
[oracle@localhost ~]$ ls
backup dbca_kfc.rsp dbca.rsp
写一个rman脚本块
#关键字allocate:手动分配一个channel
#type disk:表明channel指向disk(磁盘)
#format:指明路径或者规则
#full:代表整个数据库
#%d:取出当前备份数据库的名字
#%T:备份时间
#%s:序号
#inculde current controlfile:备份的同时备份控制文件,控制文件丢失,备份的原信息也就丢失。
#release channel name:关闭channel
run{
allocate channel name type disk format '/home/oracle/backup/full_%d_%T_%s';
backup database inculde current controlfile;
release channel name;
}
执行脚本
RAMN>run{
allocate channel name type disk format '/home/oracle/backup/full_%d_%T_%s';
backup database inculde current controlfile;
release channel name;
}
分析打印出来的日志
#产生两个备份片
piece handle=/home/oracle/backup/full_ORCL_20231010_3 tag=...
piece handle=/home/oracle/backup/full_ORCL_20231010_4 tag=...
[oracle@localhost backup]$ ls
full_ORCL_20231010_3 full_ORCL_20231010_4
#full_ORCL_20231010_3 包含了system01.dbf,sysaux01.dbf,undotbs01.dbf等信息
#full_ORCL_20231010_4 包含了controlfile信息
备份单个表空间
RAMN>run{
allocate channel name type disk format '/home/oracle/backup/tbs_users_%d_%T_%s';
backup tablesapce tablespace_name;
release channel name;
}
备份多个数据文件
#当前数据库的数据文件
desc dba_data_files;
select FILE_ID,FILE_NAME from dba_data_files;
#备份多个数据文件
RAMN>run{
allocate channel name type disk format '/home/oracle/backup/datafile_4_5_%d_%T_%s';
#备份ID为4,5的数据文件
backup datafile 4,5;
release channel name;
}