《(完整版)Rman备份.doc》由会员分享,可在线阅读,更多相关《(完整版)Rman备份.doc(5页珍藏版)》请在金锄头文库上搜索。
1、RMAN备份脚本(Unix)2008年12月26日 星期五 上午 09:55备份策略:星期天 0 级星期一,二,四,五六 2 级星期三 1 级-本地mkdir /home/oracle/backupmkdir /home/oracle/backup/scriptmkdir /home/oracle/backup/logmkdir /home/oracle/backup/export-备份目的地mkdir /home/oracle/rman_backupcreate tablespace rman_tbs datafile /oradata/luke/rman_tbs01.dbf size 10
2、24M;create user rman identified by rman default tablespace rman_tbs temporary tablespace temp;grant connect,resource ,recovery_catalog_owner to rman;rman catalog rman/rmancreate catalog tablespace rman_tbs;connect target sys/lukewhxlukeregister database;report schema;configure retention policy to re
3、dundancy 2;configure retention policy to recovery window of 7 days;-倒出RMAN用户数据脚本exp_rman.paruserid=rman/rman file=/home/oracle/backup/export/rman.dmplog=/home/oracle/backup/log/rman.log-倒出RMAN数据SHELL脚本exp_rman.sh#!/bin/bashcd $HOME. .bash_profilecd $HOME/backup/scriptexp parfile=exp_rman.par-零级备份RMA
4、N脚本level0_backup.rcvconnect catalog rman/rmanconnect target sys/unumallunu2run allocate channel d1 type disk;allocate channel d2 type disk;backup incremental level 0 database format /home/oracle/rman_backup/level0_%d_%s_%p_%u.baktag=level 0 include current controlfile;sql alter system archive log cu
5、rrent;backup archivelog all format /home/oracle/rman_backup/log_%d_%s_%p_%u.bak delete all input;release channel d2;release channel d1;crosscheck backup;delete noprompt expired backup;delete noprompt obsolete;resync catalog;-零级备份SHELL脚本的level0_backup.sh#!/bin/bashcd $HOME. .bash_profilecd $HOME/back
6、up/scriptrman cmdfile=level0_backup.rcv msglog=$HOME/backup/log/level0_backup.log. /home/oracle/backup/script/exp_rman.sh-一级差异增量备份RMAN脚本level1_backup.rcvconnect catalog rman/rmanconnect target sys/lukelukerun allocate channel d1 type disk;backup incremental level 1 format /home/oracle/rman_backup/le
7、vel1_%d_%s_%p_%u.bak tag = level 1 database;sql alter system archive log current;backup archivelog all format /home/oracle/rman_backup/log_%d_%s_%p_%u.bak delete all input;release channel d1;crosscheck backup;delete noprompt expired backup;delete noprompt obsolete;resync catalog;-一级差异增量备份SHELL脚本leve
8、l1_backup.sh#!/bin/bashcd $HOME. .bash_profilecd /home/oracle/backup/scriptrman cmdfile=level1_backup.rcv msglog=$HOME/backup/log/level1.log. /home/oracle/backup/script/exp_rman.sh-二级差异增量备份RMAN脚本level2_backup.rcvconnect catalog rman/rmanconnect target sys/lukelukerun allocate channel d1 type disk;ba
9、ckup incremental level 2 format /home/oracle/rman_backup/level2_%d_%s_%p_%u.bak tag = level 2 database;sql alter system archive log current;backup archivelog all format /home/oracle/rman_backup/log_%d_%s_%p_%u.bak delete all input;release channel d1;crosscheck backup;delete noprompt expired backup;d
10、elete noprompt obsolete;resync catalog;-二级差异增量备份SHELL脚本level2_backup.sh#!/bin/bashcd $HOME. .bash_profilecd /home/oracle/backup/scriptrman cmdfile=level2_backup.rcv msglog=$HOME/backup/log/level2.log. /home/oracle/backup/script/exp_rman.sh提高RMAN增量备份性能alter database enable block change tracking using
11、 file/u01/app/oracle/admin/devdb/bdump/luke.log;desc v$block_change_tracking; 转Oracle9i RMAN 备份及恢复步骤 在这里没有讨论多么深入的RMAN技术,也没有告诉大家这样去编写备份脚本,这并不是我的初衷,我只想把我会的写出来,和大家一起学习,一起进步,谢谢。1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL conn / as sysdba (以DBA身份连接数据库)SQL shutdown immediate; (立即关闭数据库)SQL st
12、artup mount (启动实例并加载数据库,但不打开)SQL alter database archivelog; (更改数据库为归档模式)SQL alter database open; (打开数据库)SQL alter system archive log start; (启用自动归档)SQL exit (退出)2、连接:%rman target=rman/rmanmydb (启动恢复管理器)3、基本设置:RMAN configure default device type to disk; (设置默认的备份设备为磁盘)RMAN configure device type disk p
13、arallelism 2; (设置备份的并行级别,通道数)RMAN configure channel 1 device type disk fromat /backup1/backup_%U; (设置备份的文件格式,只适用于磁盘设备)RMAN configure channel 2 device type disk fromat /backup2/backup_%U; (设置备份的文件格式,只适用于磁盘设备)RMAN configure controlfile autobackup on; (打开控制文件与服务器参数文件的自动备份)RMAN configure controlfile aut
14、obackup format for device type disk to /backup1/ctl_%F; (设置控制文件与服务器参数文件自动备份的文件格式)4、查看所有设置:RMAN show all5、查看数据库方案报表:RMAN report schema;6、备份全库:RMAN backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)7、备份表空间:RMAN backup tablespace system plus archivelog delete input; (
15、备份指定表空间及归档的重做日志,并删除旧的归档日志)8、备份归档日志:RMAN backup archivelog all delete input;9、复制数据文件:RMAN copy datafile 1 to /oracle/dbs/system.copy;10、查看备份和文件复本:RMAN list backup;11、验证备份:RMAN validate backupset 3;12、从自动备份中恢复服务器参数文件:RMAN shutdown immediate; (立即关闭数据库)RMAN startup nomount; (启动实例)RMAN restore spfile to pfile /backup1/mydb.ora from autobackup; (从自动备份中恢复服务器参数文