oracle数据库的备份与恢复6665.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《oracle数据库的备份与恢复6665.docx》由会员分享,可在线阅读,更多相关《oracle数据库的备份与恢复6665.docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、ORACLE培训教讲义第六章 oracle数据库的备份与恢复第一部分:数据库的备份备份的必要性因为各种人为或或外界的因素素可能会造成成数据库中灾灾难性的数据据丢失,为了了保证数据库库中数据的安安全,必须采采取备份措施施保证RDBBMS中包含含的数据免遭遭破坏,而有有效的备份是是十分简单和和普通的,是是在数据库处处于无法使用用状态时用于于重建数据库库的重要信息息拷贝 。在在重要的修改改如删除段或或者表空间以以前或以后执执行适当的备备份是相当必必要的。备份的种类:冷备份:一种最简单直接接的备份方式式,也称为脱脱机备份,但但是必须关闭闭数据库,这这对于当前7724的有效效性并不可取取;联机热备:正如
2、名称所示,是是在数据库打打开时执行的的备份方式,进进行联机备份份比进行脱机机备份的进程程复杂;用导出exp应应用程序备份份:是对于脱机备份份和联机备份份类型的补充充,因为它无无法回滚,所所以不能替代代数据库文件件的备份。各种备份的原理理和步骤:冷备份:关闭数据库,采采取操作系统统拷贝命令来来完成对数据据库的备份,然然后启动数据据库。例如:将名为llyj的数据据库作一个冷冷备份,备份份的文件放置置在/mntt/backkup_wyy/目录下。l 首先找出控制文文件、数据文文件和reddo日志文件件的存储位置置SQL seelect name from v$conntrolffile ;NAME-
3、/u3/oraadata/lyj/ccontrool01.cctl/u3/oraadata/lyj/ccontrool02.cctl/u3/oraadata/lyj/ccontrool03.cctlSQL seelect statuus,namme froom v$ddatafiile ;STATUS NNAME- -SYSTEM /u3/orradataa/lyj/systeem01.ddbfONLINE /u3/orradataa/lyj/toolss01.dbbfONLINE /u3/orradataa/lyj/rbs011.dbfONLINE /u3/orradataa/lyj/tem
4、p001.dbffONLINE /u3/orradataa/lyj/userss01.dbbfONLINE /u3/orradataa/lyj/indx001.dbffSQL seelect * froom v$llogfille ;GROUP# STATTUS MEMBBER-1 /u3/oraadata/lyj/rredo011.log2 /u33/oraddata/llyj/reedo02.log3 /u33/oraddata/llyj/reedo03.logl 关闭数据库:SQL shhutdowwn数据库已经关闭闭。已经卸载数据库库。ORACLE 例程已经关关闭。l 将数据文件、控控
5、制文件和rredo日志志文件从上面面查找出来的的位置拷贝到到/mnt/backuup_wy/目录下作为为备份:oraclee|15:338:09|/u3/ooradatta/lyjj$ ccp *.cctl /mmnt/baackup_wy/oraclee|15:338:29|/u3/ooradatta/lyjj$ cpp *.loog /mnnt/bacckup_wwy/oraclee|15:338:43|/u3/ooradatta/lyjj$ cpp *.dbbf /mnnt/bacckup_wwy/l 重新开启数据库库:starrtup 热备份 在联机机状态下执行行备份,这时时数据库必须
6、须运行在ARRCHIVEELOG模式式下,因为在在日志书写器器进程重新使使用它之前,副副本是由每一一个redoo日志文件组组成的,日志志书写器在循循环方式中通通过redoo日志文件进进行循环,只只要数据库正正在运行,它它就写入一个个,然后是另另一个,依此此类推。在AARCHIVVELOG模模式下运行时时,直到reedo日志文文件的永久拷拷贝被建立,OOraclee才覆盖reedo日志文文件。在ARRCHIVEELOG模式式中运行数据据库时,可以以选择当每个个redo日日志文件写满满时手工地生生成备份或者者启动可选的的归档进程进进行自动备份份。只有通过过sys身份份或inteernal登登录数据
7、库,就就有权利通过过sqlpllus或svvrmgr查查看数据库的的归档状态;SVRMGR archhive llog liist数据库记录模式式 存档模式式自动存档 已启用存档路径 /u2/orateest/addmin/llyj/arrch最旧的联机日志志顺序 496要存档的下一个个记录顺序 498当前记录顺序 4498 在这种种模式下,数数据库运行在在ARCHIIVELOGG模式下,并并且能够进行行自动归档,此此时,可以进进行联机备份份了。假设数据库运行行在非存档模模式下,就应应该在参数文文件中修改llog_arrchivee_starrt = ttrue log_arcchive_de
8、st = 指定的的保存归档日日志文件的目目录log_arcchive_formaat = “制定的归档档日志文件的的存储格式备份控制文件;备份数据文件;归档当前的联机机日志文件;备份归档日志文文件。下面以lyj为为例说明如何何热备一个数数据库:l 备份控制文件:SVRMGR alteer dattabasee backkup coontrollfile to /mnt/bbackupp_wy/ccontroolfilee ;语句已处理。用完整的文件夹夹路径和文件件的名称/mnt/bbackupp_wy/ccontroolfilee将备份控控制文件存储储在此。l 备份数据文件: 执行一一个数据库
9、的的联机备份时时,需要一次次复制一个表表空间的数据据文件,在位位一个表空间间复制文件之之前需要执行行ALTERR TABLLESPACCE tabblespaace_naame BEEGIN BBACKUPP; 为表空空间复制完文文件时,需要要执行下列命命令:ALTER TTABLESSPACE tableespacee_namee END BACKUUP; 使用这这些BEGIIN和ENDD命令的理由由是当它们被被复制时,OOraclee需要将数据据文件头保持持连贯状态,发发出BEGIIN命令时,OOraclee停止更新受受影响的数据据文件的文件件头上的检查查点,在整个个表空间备份份模式中,O
10、Oraclee通过将全部部的数据块写写入redoo日志文件的的方式来记录录这个表空间间中的数据的的变化。通过下面语句找找出所有表空空间的名字:SVRMGR seleect * from v$tabblespaace;TS# NNAME- - 0 SSYSTEMM 1 TTOOLS 2 RRBS 3 TTEMP 4 UUSERS 5 IINDX 然后对对这些表空间间进行备份,将将数据文件备备份到/mnnt/bacckup_wwy/目录下:SVRMGR alteer tabblespaace syystem beginn backkup ;语句已处理。SVRMGR alteer tabblespa
11、ace toools bbegin backuup ;语句已处理。SVRMGR alteer tabblespaace rbbs beggin baackup;语句已处理。SVRMGR alteer tabblespaace teemp beegin bbackupp ;语句已处理。SVRMGR alteer tabblespaace ussers bbegin backuup ;语句已处理。SVRMGR alteer tabblespaace inndx beegin bbackupp ;语句已处理。oraclee|17:001:53|/u3/ooradatta/lyjj$ cpp *.db
12、bf /mnt/backuup_wy/SVRMGR alteer tabblespaace syystem end bbackupp ;语句已处理。SVRMGR alteer tabblespaace toools eend baackup ;语句已处理。SVRMGR alteer tabblespaace ussers eend baackup ;语句已处理。SVRMGR alteer tabblespaace teemp ennd bacckup ;语句已处理。SVRMGR alteer tabblespaace inndx ennd bacckup ;语句已处理。SVRMGR altee
13、r tabblespaace rbbs endd backkup ;语句已处理。l 归档当前的联机机redo日日志文件:备份完所有的数数据文件后,需需要归档当前前的联机reedo日志文文件,因为恢恢复时需要它它们。归档她她们时允许和和所有其他的的归档日志文文件一起进行行备份。SVRMGR alteer sysstem aarchivve logg currrent;语句已处理。这条命令导致OOraclee转换到一个个新的日志文文件。然后OOraclee归档所有未未被归档的日日志文件,还还可以使用另另外两条命令令达到相同的的效果:SVRMGR alteer sysstem sswitchh lo
14、gffile ;语句强制转换日日志。SVRMGR alteer sysstem aarchivve logg all ;语句导致Oraacle所有有已写满但仍仍未归档的rredo日志志文件归档。l 备份归档日志文文件一旦已经归档了了当前联机的的日志文件,最最后一步就是是备份所有归归档日志文件件到/mntt/backkup_wyy/目录下,因因为还原数据据库时需要它它们oraclee|17:442:46|/u2/ooratesst/admmin/lyyj/arcch$ ccp arcch_*.* /mntt/backkup_wyy/导出数据库作备备份数据库导出可以以被看作备份份的一种形式式。Or
15、accle实用工工具Expoort利用SSQL语句读读出数据库数数据,并在操操作系统层将将数据和定义义存入二进制制文件。导出出对于还原一一个意外删除除的对象或还还原这个对象象的定义来说说是很好的,因因为脱机备份份不能只还原原一个对象,而而联机备份还还原一个对象象必须得还原原该对象存在在的数据文件件,相对于导导出这种备份份形式来说要要繁琐很多,但但是从导出中中还原时,仅仅能得到导出出文件中的内内容,不能从从中向前回滚滚,所以导出出数据库这种种备份方式只只能作为联机机备份和脱机机备份的一种种补充。第二部分:数据据库的恢复请求恢复数据库的恢复一一般分为NOOARCHIIVELOGG模式和ARRCHI
16、VEELOG模式式,实际情况况中很少会丢丢失整个一个个oraclle数据库,通通常只是一个个驱动器损坏坏,使得仅仅仅丢失该驱动动器上的文件件。如何从这这样的损失中中恢复很大程程度上取决于于数据库是否否正运行在AARCHIVVELOG模模式下。如果果没有运行在在ARCHIIVELOGG模式下而丢丢失了一个数数据库文件,就就只能从最近近的一次备份份中恢复整个个数据库,备备份之后的所所有变化都丢丢失,而且在在数据库被恢恢复时,必须须关闭数据库库。由于在一一个产品中丢丢失数据或将将数据库关闭闭一段时间是是不可取的,所所以大多数ooraclee产品数据库库都运行在AARCHIVVELOG模模式下。在or
17、aclee中,恢复指指的是从归档档和联机reedo日志文文件中读取rredo日志志记录并将这这些变化应用用到数据文件件中并将其更更新到最近状状态的过程。从备份中还原一一个文件时,文文件代表了数数据库被备份份时而不是丢丢失时的状态态,通常情况况下希望恢复复过渡期即文文件备份和文文件丢失之间间发生的所有有变化,由于于所有变化都都被写入日志志文件中,所所以能够通过过读取日志文文件并且再次次将这些变化化应用于所还还原的文件中中。还原NOARCCHIVELLOG模式下下的数据库还原一个运行于于NOARCCHIVELLOG模式下下的数据库代代表了最简单单的情况,由由于不存在归归档日志文件件,也就不可可能有
18、介质恢恢复,全部的的操作仅仅是是操作系统级级的复制过程程。还原一个个NOARCCHIVELLOG模式下下运行的数据据库由下列几几步组成:l 如果实例正在运运行,关闭数数据库;shhutdowwnl 从最近备份中还还原控制文件件和数据文件件;l 指定是否移动任任何一个文件件在启动数据库时时,oraccle将根据据参数文件指指定的路径寻寻找这些文件件。如果一个个磁盘的丢失失迫使将文件件放回到与最最初不同的位位置,需要告告诉oraccle,否则则,就会出现现出错信息。可以有两种方法法告诉oraacle已移移动了一个数数据库文件:1、 使用alterr dataabase renamme filleo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 数据库 备份 恢复 6665
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内