oracle之rman备份

时间:2022-11-08 18:09:24

rman必须在oracle的归档模式下才能进行

查看数据库是否为归档状态,在oracle数据库的命令行输入

archive log list;

首先关闭数据库

shutdown immediate;

startup mount;  (mount 状态不同于open)

alter database archivelog;      修改为归档模式

alter database open;          启动数据库

再次执行archive log list;

现在开始rman操作

rman target/

show all ;        参看参数

configure controlfile autobackup on;         启动控制文件的自动备份

show controlfile autobackup;        查看是否已自动备份

backup database;            简单的全库备份

list backup;                查看备份信息

此时可以返回shell终端,查看系统还剩余多少空间,从而估算备份冗余数(也就是说可以自动备份几次)

再次rman target/

configure retention policy to redundancy 10;

0级备份脚本(全库备份)

rman target/ << EOF_RMAN

run{

allocate channel c1 type disk;

backup incremental level 0 tag 'db0' format

'/u01/app/oracle/RmanBackup/db0_%d_%T_%s' database include current controlfile;       #我执行这个脚本会报错,把%T_%s改为%U就可以恢复正常了

delete noprompt obsolete;

release channel c1;

}

1级备份脚本(增量备份)

rman target/ << EOF_RMAN

run{

allocate channel c1 type disk;

backup incremental level 1 tag 'db1' format

'/u01/app/oracle/RmanBackup/db0_%d_%T_%s' database include current controlfile;

delete noprompt obsolete;

release channel c1;

}