Oracle RMAN快速入门指南时间对应海明老师OracleRMAN学习

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

OracleRMAN快速入门指南时间:播布客网海明老师的讲座配套教程前言这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN2K和ORACLE8.1.6环境下测试成功(因为这个环境比较容易实现)。这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间的实践磨练才可以,尤其需要在工程中获得宝贵的故障解决经验。1.什么是RMANRMAN可以用来备份和还原数据库文件、归档日志和控制文件。它也可以用来执行完全或不完全的数据库恢复。注意:RMAN不能用于备份初始化参数文件和口令文件。RMAN启动数据库上的Oracle服务器进程来进行备份或还原。备份、还原、恢复是由这些进程驱动的。RMAN可以由OEM的BackupManagerGUI来控制,但在本文章里不作重点讨论。2.Terminology专业词汇解释2.1.Backupsets备份集合备份集合有下面的特性:包括一个或多个数据文件或归档日志以oracle专有的格式保存有一个完全的所有的备份片集合构成构成一个完全备份或增量备份2.2.Backuppieces备份片一个备份集由若干个备份片组成。每个备份片是一个单独的输出文件。一个备份片的大小是有限制的;如果没有大小的限制,备份集就只由一个备份片构成。备份片的大小不能大于使用的文件系统所支持的文件长度的最大值。2.3.Imagecopies镜像备份镜像备份是独立文件(数据文件、归档日志、控制文件)的备份。它很类似操作系统级的文件备份。它不是备份集或备份片,也没有被压缩。2.4.Fullbackupsets全备份集合全备份是一个或多个数据文件中使用过的数据块的的备份。没有使用过的数据块是不被备份的,也就是说,oracle进行备份集合的压缩。2.5.Incrementalbackupsets增量备份集合增量备份是指备份一个或多个数据文件的自从上一次同一级别的或更低级别的备份以来被修改过的数据块。与完全备份相同,增量备份也进行压缩。2.6.Filemultiplexing不同的多个数据文件的数据块可以混合备份在一个备份集中。2.7.Recoverycatalogresyncing恢复目录同步使用恢复管理器执行backup、copy、restore或者switch命令时,恢复目录自动进行更新,但是有关日志与归档日志信息没有自动记入恢复目录。需要进行目录同步。使用resynccatalog命令进行同步。RMANresynccatalog;RMAN-03022:正在编译命令:resyncRMAN-03023:正在执行命令:resyncRMAN-08002:正在启动全部恢复目录的resyncRMAN-08004:完成全部resync3.恢复目录3.1.恢复目录的概念恢复目录是由RMAN使用、维护的用来放置备份信息的仓库。RMAN利用恢复目录记载的信息去判断如何执行需要的备份恢复操作。恢复目录可以存在于ORACLE数据库的计划中。虽然恢复目录可以用来备份多个数据库,建议为恢复目录数据库创建一个单独的数据库。恢复目录数据库不能使用恢复目录备份自身。3.2.建立恢复目录第一步,在目录数据库中创建恢复目录所用表空间:SQLcreatetablespacerman_tsdatafiled:\oracle\oradata\rman\rman_ts.dbfsize20M;表空间已创建。第二步,在目录数据库中创建RMAN用户并授权:SQLcreateuserrmanidentifiedbyrmandefaulttablespacerman_tstemporarytablespacetempquotaunlimitedonrman_ts;用户已创建。SQLgrantrecovery_catalog_ownertorman;授权成功。SQLgrantconnect,resourcetorman;授权成功。第三步,在目录数据库中创建恢复目录C:\rmancatalogrman/rman恢复管理器:版本8.1.6.0.0-ProductionRMAN-06008:连接到恢复目录数据库RMAN-06428:未安装恢复目录RMANcreatecatalogtablespacerman_ts;RMAN-06431:恢复目录已创建注意:虽然使用RMAN不一定必需恢复目录,但是推荐使用。因为恢复目录记载的信息大部分可以通过控制文件来记载,RMAN在恢复数据库时使用这些信息。不使用恢复目录将会对备份恢复操作有限制。3.3.使用恢复目录的优势可以存储脚本;记载较长时间的备份恢复操作;4.启动RMANRMAN为交互式命令行处理界面,也可以从企业管理器中运行。为了使用下面的实例,先检查环境符合:thetargetdatabaseiscalledhisandhasthesameTNSaliasuserrmanhasbeengrantedrecovery_catalog_ownerprivileges目标数据库的连接用户为internal帐号,或者以其他SYSDBA类型帐号连接therecoverycatalogdatabaseiscalledrmanandhasthesameTNSaliastheschemacontainingtherecoverycatalogisrman(samepassword)在使用RMAN前,设置NLS_DATE_FORMAT和NLS_LANG环境变量,很多RMANLIST命令的输出结果是与日期时间相关的,这点在用户希望执行以时间为基准的恢复工作也很重要。下例是环境变量的示范:NLS_LANG=SIMPLIFIEDCHINESE_CHINA.ZHS16GBKNLS_DATE_FORMAT=DD-MON-YYYYHH24:MI:SS为了保证RMAN使用时能连接恢复目录,恢复目录数据库必须打开,目标数据库至少要STARTED(unmount),否则RMAN会返回一个错误,目标数据库必须置于归档模式下。4.1.使用不带恢复目录的RMAN设置目标数据库的ORACLE_SID,执行:%rmannocatalogRMANconnecttargetRMANconnecttargetinternal/PASSWORD@his4.2.使用带恢复目录的RMAN%rmanrman_tsrman/rman@rmanRMANconnecttarget%rmanrman_tsrman/rman@rmantargetinternal/PASSWORD@his4.3.使用RMAN一旦连接到目标数据库,可以通过交互界面或者事先存储的脚本执行指定RMAN命令,下面是一个使用RMAN交互界面的实例:RMANresynccatalog;RMAN-03022:正在编译命令:resyncRMAN-03023:正在执行命令:resyncRMAN-08002:正在启动全部恢复目录的resyncRMAN-08004:完成全部resync使用脚本的实例:RMANexecutescriptalloc_1_disk;创建或者替代存储的脚本:RMANreplacescriptalloc_1_disk{2allocatechanneld1typedisk;3}5.注册或者注销目标数据库5.1.注册目标数据库数据库状态:恢复目录状态:打开目标数据库:加载或者打开目标数据库在第一次使用RMAN之前必须在恢复目录中注册:第一步,启动恢复管理器,并且连接目标数据库:C:\rmantargetinternal/oracle@hiscatalogrman/rman@rman恢复管理器:版本8.1.6.0.0-ProductionRMAN-06005:连接到目标数据库:HIS(DBID=3021445076)RMAN-06008:连接到恢复目录数据库第二步,注册数据库:RMANregisterdatabase;RMAN-03022:正在编译命令:registerRMAN-03023:正在执行命令:registerRMAN-08006:注册在恢复目录中的数据库RMAN-03023:正在执行命令:fullresyncRMAN-08002:正在启动全部恢复目录的resyncRMAN-08004:完成全部resync5.2.注销目标数据库RMAN提供了一个注销工具,叫DBMS_RCVCAT工具包,请注意一旦注销了该目标数据库,就不可以使用恢复目录中含有的备份集来恢复数据库了。为了能注销数据库,需要获得数据库的标识码(DB_ID)和数据库键值(DB_KEY)。其中连接目标数据库时将会获得DB_ID。C:\rmantargetinternal/oracle@hiscatalogrman/rman@rman恢复管理器:版本8.1.6.0.0-ProductionRMAN-06005:连接到目标数据库:HIS(DBID=3021445076)RMAN-06008:连接到恢复目录数据库其中DBID=3021445076,利用DBID=3021445076查询数据库键值码,连接到目标数据库,查询db表:SQLselect*fromdb;DB_KEYDB_IDCURR_DBINC_KEY----------------------------------130214450762获得DB_KEY=1,这样,该目标数据库DB_KEY=1,DBID=3021445076,利用两个值使用DBMS_RCVCAT工具包就可以注销数据库:SQLexecutedbms_rcvcat.unregisterdatabase(1,3021445076);PL/SQL过程已成功完成。至此,注销数据库操作完成。6.操作已有的备份6.1.加入目录数据库数据库状态:恢复目录:打开目标数据库:加载或者打开如果存在8.x版本以前创建的备份数据想注册到目标数据库,可以采用如下手工方式加入到恢复目录中RMANcatalogdatafilecopy/oracle/..../system01.dbf;使用如下命令显示恢复目录中包含的文件RMANlistcopyofdatabase;6.2.从目录数据库中删除第一步:查看备份信息:RMANlistbackup;RMAN-03022:正在编译命令:list备份集列表关键字Recid标记LV集合标记集合计数完成时间-----------------------------------------------------------------------110425013644550501364446206-8月-03备份段列表关键字Pc#Cp#状态完成时间段名----------------------------------------------------------------------110611AVAILABLE06-8月-03D:\ORACLE\ORA81\DATABASE\02EU4DMU_1_1数据文件包括列表文件名称LV类型检查点SCN检查点时间----------------------------------------------------------------------3D:\ORACLE\ORADATA\HIS\USERS01.DBF0Full16005206-8月-03备份集的关键字为1104。第二步:定义delete通道:RMANallocatechannelfordeletetypedisk;RMAN-03022:正在编译命令:allocateRMAN-03023:正在执行命令:allocateRMAN-08030:分配的通道:deleteRMAN-08500:通道delete:sid=19devtype=DISK第三步:删除backupset备份集RMANchangeb

1 / 13
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功