RMAN的备份与恢复步骤详解.docx
《RMAN的备份与恢复步骤详解.docx》由会员分享,可在线阅读,更多相关《RMAN的备份与恢复步骤详解.docx(8页珍藏版)》请在冰豆网上搜索。
RMAN的备份与恢复步骤详解
RMAN的备份与恢复步骤详解
在这里没有讨论多么深入的RMAN技术,也没有告诉大家这样去编写备份脚本,这并不是我的初衷,我只想把我会的写出来,和大家一起学习,一起进步,谢谢。
1、切换服务器归档模式,如果已经是归档模式可跳过此步:
%sqlplus/nolog(启动sqlplus)
SQL>conn/assysdba(以DBA身份连接数据库)
SQL>shutdownimmediate;(立即关闭数据库)
SQL>startupmount(启动实例并加载数据库,但不打开)
SQL>alterdatabasearchivelog;(更改数据库为归档模式)
SQL>alterdatabaseopen;(打开数据库)
SQL>altersystemarchivelogstart;(启用自动归档)
SQL>exit(退出)
2、连接:
%rmantarget=rman/rman@mydb(启动恢复管理器)
3、基本设置:
RMAN>configuredefaultdevicetypetodisk;(设置默认的备份设备为磁盘)
RMAN>configuredevicetypediskparallelism2;(设置备份的并行级别,通道数)
RMAN>configurechannel1devicetypediskfromat'/backup1/backup_%U';(设置备份的文件格式,只适用于磁盘设备)
RMAN>configurechannel2devicetypediskfromat'/backup2/backup_%U';(设置备份的文件格式,只适用于磁盘设备)
RMAN>configurecontrolfileautobackupon;(打开控制文件与服务器参数文件的自动备份)
RMAN>configurecontrolfileautobackupformatfordevicetypediskto'/backup1/ctl_%F';(设置控制文件与服务器参数文件自动备份的文件格式)
4、查看所有设置:
RMAN>showall
5、查看数据库方案报表:
RMAN>reportschema;
6、备份全库:
RMAN>backupdatabaseplusarchivelogdeleteinput;(备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)
7、备份表空间:
RMAN>backuptablespacesystemplusarchivelogdeleteinput;(备份指定表空间及归档的重做日志,并删除旧的归档日志)
8、备份归档日志:
RMAN>backuparchivelogalldeleteinput;
9、复制数据文件:
RMAN>copydatafile1to'/oracle/dbs/system.copy';
10、查看备份和文件复本:
RMAN>listbackup;
11、验证备份:
RMAN>validatebackupset3;
12、从自动备份中恢复服务器参数文件:
RMAN>shutdownimmediate;(立即关闭数据库)
RMAN>startupnomount;(启动实例)
RMAN>restorespfiletopfile'/backup1/mydb.ora'fromautobackup;(从自动备份中恢复服务器参数文件)
13、从自动备份中恢复控制文件:
RMAN>shutdownimmediate;(立即关闭数据库)
RMAN>startupnomount;(启动实例)
RMAN>restorecontrolfileto'/backup1'fromautobackup;(从自动备份中恢复控制文件)
13、恢复和复原全数据库:
RMAN>shutdownimmediate;(立即关闭数据库)
RMAN>exit(退出)
%mv/oracle/dbs/tbs_12.f/oracle/dbs/tbs_12.bak(将
archivelogdeleteinput;
第七天的增量差异备份:
RMAN>backupincrementallevel=0databaseplusarchivelogdeleteinput;
增量恢复:
RMAN>shutdownimmediate;
RMAN>exit
%mv/oracle/dbs/tbs_12.f/oracle/dbs/tbs_12.bak
%mv/oracle/dbs/tbs_13.f/oracle/dbs/tbs_13.bak
%mv/oracle/dbs/tbs_14.f/oracle/dbs/tbs_14.bak
%mv/oracle/dbs/tbs_15.f/oracle/dbs/tbs_15.bak
%rmantarget=rman/rman@mydb
RMAN>startuppfile=/oracle/admin/mydb/pfile/initmydb.ora
RMAN>restoredatabase;
RMAN>recoverdatabase;
RMAN>alterdatabaseopen。
(e129)on.htmsimulator/doc/license_keys.htmsimulator/doc/sdk.style.csssimulator/doc/davehitzforeword.htmsimulator/doc/faq.htmsimulator/doc/troubleshooting.htmsimulator/license.htmsimulator/readme.htmsimulator/runsim.shsimulator/setup.shsimulator/sim.tgz--在正式备份之前,一定按如下要求去做。
--版权声明如下:
--读者可以任意拷贝、修改该备份脚本的内容,但不可以篡改作者。
--作者:
徐玉金
各文件的作用:
1.rman_db_all.sh:
备份整个oracle数据库,该文件会先后调用rman_db.sh,scp_rman_db_files.sh文件
2.rman_db.sh:
由rman_db_all.sh文件调用,实现用rman备份数据库.该脚本会首先根据环境变量的设置:
a.生成一个rman脚本文件(rman_arch_cr_g.sh),去检查归档日志的情况b.生成一个rman脚本文件(rman_db_backup_g.sh),备份整个数据库
3.scp_rman_db_files.sh:
由rman_db_all.sh文件调用,将用rman备份出的数据文件拷贝到另外一个机器上,用scp拷贝
4.OS_bak_arch.sh:
用操作系统拷贝方法只备份归档日志文件,该文件会先后调用OS_bak_arch.sh,scp_rman_arch_files.sh文件
5.OS_bak_arch.sh:
由OS_bak_arch.sh文件调用,实现将新产生的归档日志拷贝到指定的目录.
6.scp_rman_arch_files.sh由OS_bak_arch.sh文件调用,将第5步的指定目录的归档日志用scp拷贝到另外一台机器上。
具体设置方法:
1.设置服务器,使之用ssh与scp密码登录时不用密码
2.在备份服务器上创建相应的备份目录,为BACKUP_SERVER_TARGET,BACKUP_SERVER_SCRIPT_TARGET环境变量指定的值
3.在数据库服务器上创建相应的目录,为BACKUP_BASE,SCRIPT_FILE_TARGET环境变量指定的值
3.修改所有文件中的相应环境变量的值,所有文件的环境变量都一样
4.运行前将rman_db_all.sh,rman_arch_all.sh文件前面有中文的行去掉
5.根据归档目录个数的不同,适当的修改脚本
6.将所有脚本拷贝到备份服务器的BACKUP_SERVER_SCRIPT_TARGET目录下,并使所有的脚本由可执行权限
10.将rman_db_all.sh文件加到cron中,每天运行一次。
rman_arch_all.sh也加到cron中,每30分钟运行一次
11.根据需要修改,LOG_CHECKPOINT_TIMEOUT,使之在指定的时间内归档,这样可以保证在整个系统硬盘都崩溃的情况的,只损失指定时间的记录
备注:
1.在oracle9i下测试通过
2.每个scrip中都设置enviromentvariable的原因是:
用ssh时,环境变量传不过去。
Oracle恢复管理(RMAN)有很多可以用来帮助备份和恢复进程的功能,
该工具具有命令行和GUI两种版本。
通常,RMAN执行并标准化备份和恢复进程,并且通过其操作,减少DBA在此过程中犯的错误。
RMAN的主要功能如下所示:
备份数据库、表空间、数据文件、控制文件和归档日志
RMAN工具能以很多种方法备份Oracle数据库,给备份和恢复方法提供了很大的灵活性。
通过确定哪些块已经修改,并且仅备份修改过的块来压缩备份
RMAN提高备份性能的方法之一就是压缩备份。
RMAN能识别出哪些块被修改过,并且只备份这些修改过的块,不备份空块。
执行增量备份
RMAN具有执行增量备份和完全备份的能力。
增量备份仅备份从上次备份后修改了的内容,此方法允许你一周只有一天执行完全备份,而其它几天都执行增量备份,这样就提高了备份的性能。
提供多项任务合并执行的脚本功能
RMAN提高你备份、还原和恢复操作的方法之一就是允许RMAN命令脚本化。
该脚本可能饮食多个存储在恢复目录内的RMAN命令。
可以重复调用、执行这些脚本来完成任务。
日志备份操作
随着时间发展,RMAN具有记录所有备份状态的能力。
该信息存储在日志和跟踪文件中。
可第三方磁带介质软件集成
RMAN工具有到很多第三方磁带介质软件的API,这就允许RMAN在其它非Oracle的备份工具中运行,也可以被某机构集成到通用备份策略中。
提供目录信息报表和列表
可以使用RMANLIST和REPORT命令查询存储在必得目录中有关备份的信息,这些命令提供显示信息的有效方法。
在Oracle数据库的目录中存储有关备份的信息有关备份的信息存储在恢复目录中。
日后任何时候都可以还原该信息。
提供性能好处,如并行处理备份和还原操作
备份和还原操作可以并行处理。
它支持将工作负载分配到不同的磁带头和磁盘设备上,
这样可以提高性能。
出于测试或开发目的创建数据库副本
可以从RMAN备份创建数据库副本,并可用于测试目的。
测试备份是否能成功还原
RMAN提供的VALID命令可以检查备份是否有效的。
检测介质库中的备份是否依然可用
RMAN提供的CROSSCHECK命令可以检测备份介质和目录信息是否匹配。