启用归档
--检查是否为归档
SQL> archive log list;
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 1423
Current log sequence 1425
No Archive Mode 表示非归档模式
开归档:
alter database archivelog;
关归档:
alter database noarchivelog;
★ 开启归档步骤
--关库
shutdown immediate;
startup mount;
--配置归档路径
alter system set log_archive_dest_1='location=/home/oracle/arch';
--开启归档
alter database archivelog;
-- 确认开启了归档
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /home/oracle/arch
Oldest online log sequence 1423
Next log sequence to archive 1425
Current log sequence 1425
Rman备份
前置条件
开启控制文件自动备份,否则在做全量备份时,rman也会生成控制文件快照,只是这个控制文件快照生于备份集产生,不包含最后一次的备份信息,因而不能用于最后一次备份集恢复,所以一定要开启控制文件自动备份。
相关脚本
[oracle@localhost rmans]$ cat startrmans.sh #!/bin/bash bak_dir=/home/oracle/rmans # mkdir -p $bak_dir/{logs,data} day=`date +%Y%m%d` echo "$day begin backup." rman target / @$bak_dir/fullbak.sql log=$bak_dir/logs/fullbak`date +%Y%m%d`.log echo "$day end backup." [oracle@localhost rmans]$ cat fullbak.sql run{ backup full database include current controlfile format '/home/oracle/rmans/data/fullback_%d_%T_%s'; }
rman备份集清理
手工删除了备份集磁盘文件后,使用crosscheck backupset 检查会提示EXPIRED.
RMAN> crosscheck backupset ;
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=776 device type=DISK
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/rmans/data/fullback_ORCL_20181217_2 RECID=1 STAMP=995105790
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/rmans/data/fullback_ORCL_20181217_3 RECID=2 STAMP=995107713
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/rmans/data/fullback_ORCL_20181217_4 RECID=3 STAMP=995107750
Crosschecked 3 objects
RMAN> delete expired backupset;
using channel ORA_DISK_1
List of Backup Pieces
BP Key BS Key Pc# Cp# Status Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
1 1 1 1 EXPIRED DISK /home/oracle/rmans/data/fullback_ORCL_20181217_2
2 2 1 1 EXPIRED DISK /home/oracle/rmans/data/fullback_ORCL_20181217_3
3 3 1 1 EXPIRED DISK /home/oracle/rmans/data/fullback_ORCL_20181217_4
Do you really want to delete the above objects (enter YES or NO)? YES
deleted backup piece
backup piece handle=/home/oracle/rmans/data/fullback_ORCL_20181217_2 RECID=1 STAMP=995105790
deleted backup piece
backup piece handle=/home/oracle/rmans/data/fullback_ORCL_20181217_3 RECID=2 STAMP=995107713
deleted backup piece
backup piece handle=/home/oracle/rmans/data/fullback_ORCL_20181217_4 RECID=3 STAMP=995107750
Deleted 3 EXPIRED objects