欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    Oracle管理oracle数据库的备份与恢复.docx

    • 资源ID:16653158       资源大小:21.97KB        全文页数:15页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Oracle管理oracle数据库的备份与恢复.docx

    1、Oracle管理oracle数据库的备份与恢复第六章 oracle数据库的备份与恢复第一部分:数据库的备份备份的必要性因为各种人为或外界的因素可能会造成数据库中灾难性的数据丢失,为了保证数据库中数据的安全,必须采取备份措施保证RDBMS中包含的数据免遭破坏,而有效的备份是十分简单和普通的,是在数据库处于无法使用状态时用于重建数据库的重要信息拷贝 。在重要的修改如删除段或者表空间以前或以后执行适当的备份是相当必要的。备份的种类:冷备份:一种最简单直接的备份方式,也称为脱机备份,但是必须关闭数据库,这对于当前724的有效性并不可取;联机热备:正如名称所示,是在数据库打开时执行的备份方式,进行联机备

    2、份比进行脱机备份的进程复杂;用导出exp应用程序备份:是对于脱机备份和联机备份类型的补充,因为它无法回滚,所以不能替代数据库文件的备份。各种备份的原理和步骤:冷备份:关闭数据库,采取操作系统拷贝命令来完成对数据库的备份,然后启动数据库。例如:将名为lyj的数据库作一个冷备份,备份的文件放置在/mnt/backup_wy/目录下。 首先找出控制文件、数据文件和redo日志文件的存储位置SQL select name from v$controlfile ;NAME-/u3/oradata/lyj/control01.ctl/u3/oradata/lyj/control02.ctl/u3/orad

    3、ata/lyj/control03.ctlSQL select status,name from v$datafile ;STATUS NAME- -SYSTEM /u3/oradata/lyj/system01.dbfONLINE /u3/oradata/lyj/tools01.dbfONLINE /u3/oradata/lyj/rbs01.dbfONLINE /u3/oradata/lyj/temp01.dbfONLINE /u3/oradata/lyj/users01.dbfONLINE /u3/oradata/lyj/indx01.dbfSQL select * from v$logf

    4、ile ;GROUP# STATUS MEMBER-1 /u3/oradata/lyj/redo01.log2 /u3/oradata/lyj/redo02.log3 /u3/oradata/lyj/redo03.log 关闭数据库:SQL shutdown数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。 将数据文件、控制文件和redo日志文件从上面查找出来的位置拷贝到/mnt/backup_wy/目录下作为备份:oracle|15:38:09|/u3/oradata/lyj$ cp *.ctl /mnt/backup_wy/oracle|15:38:29|/u3/oradata/

    5、lyj$ cp *.log /mnt/backup_wy/oracle|15:38:43|/u3/oradata/lyj$ cp *.dbf /mnt/backup_wy/ 重新开启数据库:startup 热备份 在联机状态下执行备份,这时数据库必须运行在ARCHIVELOG模式下,因为在日志书写器进程重新使用它之前,副本是由每一个redo日志文件组成的,日志书写器在循环方式中通过redo日志文件进行循环,只要数据库正在运行,它就写入一个,然后是另一个,依此类推。在ARCHIVELOG模式下运行时,直到redo日志文件的永久拷贝被建立,Oracle才覆盖redo日志文件。在ARCHIVELOG

    6、模式中运行数据库时,可以选择当每个redo日志文件写满时手工地生成备份或者启动可选的归档进程进行自动备份。只有通过sys身份或internal登录数据库,就有权利通过sqlplus或svrmgr查看数据库的归档状态;SVRMGR archive log list数据库记录模式 存档模式自动存档 已启用存档路径 /u2/oratest/admin/lyj/arch最旧的联机日志顺序 496要存档的下一个记录顺序 498当前记录顺序 498 在这种模式下,数据库运行在ARCHIVELOG模式下,并且能够进行自动归档,此时,可以进行联机备份了。假设数据库运行在非存档模式下,就应该在参数文件中修改lo

    7、g_archive_start = true log_archive_dest = 指定的保存归档日志文件的目录log_archive_format = “制定的归档日志文件的存储格式备份控制文件;备份数据文件;归档当前的联机日志文件;备份归档日志文件。下面以lyj为例说明如何热备一个数据库: 备份控制文件:SVRMGR alter database backup controlfile to /mnt/backup_wy/controlfile ;语句已处理。用完整的文件夹路径和文件的名称/mnt/backup_wy/controlfile将备份控制文件存储在此。 备份数据文件: 执行一个数

    8、据库的联机备份时,需要一次复制一个表空间的数据文件,在位一个表空间复制文件之前需要执行ALTER TABLESPACE tablespace_name BEGIN BACKUP; 为表空间复制完文件时,需要执行下列命令:ALTER TABLESPACE tablespace_name END BACKUP; 使用这些BEGIN和END命令的理由是当它们被复制时,Oracle需要将数据文件头保持连贯状态,发出BEGIN命令时,Oracle停止更新受影响的数据文件的文件头上的检查点,在整个表空间备份模式中,Oracle通过将全部的数据块写入redo日志文件的方式来记录这个表空间中的数据的变化。通过

    9、下面语句找出所有表空间的名字:SVRMGR select * from v$tablespace;TS# NAME- - 0 SYSTEM 1 TOOLS 2 RBS 3 TEMP 4 USERS 5 INDX 然后对这些表空间进行备份,将数据文件备份到/mnt/backup_wy/目录下:SVRMGR alter tablespace system begin backup ;语句已处理。SVRMGR alter tablespace tools begin backup ;语句已处理。SVRMGR alter tablespace rbs begin backup;语句已处理。SVRMGR

    10、 alter tablespace temp begin backup ;语句已处理。SVRMGR alter tablespace users begin backup ;语句已处理。SVRMGR alter tablespace indx begin backup ;语句已处理。oracle|17:01:53|/u3/oradata/lyj$ cp *.dbf /mnt/backup_wy/SVRMGR alter tablespace system end backup ;语句已处理。SVRMGR alter tablespace tools end backup ;语句已处理。SVRM

    11、GR alter tablespace users end backup ;语句已处理。SVRMGR alter tablespace temp end backup ;语句已处理。SVRMGR alter tablespace indx end backup ;语句已处理。SVRMGR alter tablespace rbs end backup ;语句已处理。 归档当前的联机redo日志文件:备份完所有的数据文件后,需要归档当前的联机redo日志文件,因为恢复时需要它们。归档她们时允许和所有其他的归档日志文件一起进行备份。SVRMGR alter system archive log c

    12、urrent;语句已处理。这条命令导致Oracle转换到一个新的日志文件。然后Oracle归档所有未被归档的日志文件,还可以使用另外两条命令达到相同的效果:SVRMGR alter system switch logfile ;语句强制转换日志。SVRMGR alter system archive log all ;语句导致Oracle所有已写满但仍未归档的redo日志文件归档。 备份归档日志文件一旦已经归档了当前联机的日志文件,最后一步就是备份所有归档日志文件到/mnt/backup_wy/目录下,因为还原数据库时需要它们oracle|17:42:46|/u2/oratest/admin/

    13、lyj/arch$ cp arch_*.* /mnt/backup_wy/导出数据库作备份数据库导出可以被看作备份的一种形式。Oracle实用工具Export利用SQL语句读出数据库数据,并在操作系统层将数据和定义存入二进制文件。导出对于还原一个意外删除的对象或还原这个对象的定义来说是很好的,因为脱机备份不能只还原一个对象,而联机备份还原一个对象必须得还原该对象存在的数据文件,相对于导出这种备份形式来说要繁琐很多,但是从导出中还原时,仅能得到导出文件中的内容,不能从中向前回滚,所以导出数据库这种备份方式只能作为联机备份和脱机备份的一种补充。第二部分:数据库的恢复请求恢复数据库的恢复一般分为NO

    14、ARCHIVELOG模式和ARCHIVELOG模式,实际情况中很少会丢失整个一个oracle数据库,通常只是一个驱动器损坏,使得仅仅丢失该驱动器上的文件。如何从这样的损失中恢复很大程度上取决于数据库是否正运行在ARCHIVELOG模式下。如果没有运行在ARCHIVELOG模式下而丢失了一个数据库文件,就只能从最近的一次备份中恢复整个数据库,备份之后的所有变化都丢失,而且在数据库被恢复时,必须关闭数据库。由于在一个产品中丢失数据或将数据库关闭一段时间是不可取的,所以大多数oracle产品数据库都运行在ARCHIVELOG模式下。在oracle中,恢复指的是从归档和联机redo日志文件中读取red

    15、o日志记录并将这些变化应用到数据文件中并将其更新到最近状态的过程。从备份中还原一个文件时,文件代表了数据库被备份时而不是丢失时的状态,通常情况下希望恢复过渡期即文件备份和文件丢失之间发生的所有变化,由于所有变化都被写入日志文件中,所以能够通过读取日志文件并且再次将这些变化应用于所还原的文件中。还原NOARCHIVELOG模式下的数据库还原一个运行于NOARCHIVELOG模式下的数据库代表了最简单的情况,由于不存在归档日志文件,也就不可能有介质恢复,全部的操作仅仅是操作系统级的复制过程。还原一个NOARCHIVELOG模式下运行的数据库由下列几步组成: 如果实例正在运行,关闭数据库;shutd

    16、own 从最近备份中还原控制文件和数据文件; 指定是否移动任何一个文件在启动数据库时,oracle将根据参数文件指定的路径寻找这些文件。如果一个磁盘的丢失迫使将文件放回到与最初不同的位置,需要告诉oracle,否则,就会出现出错信息。可以有两种方法告诉oracle已移动了一个数据库文件:1、 使用alter database rename fileoriginal_filename to new_filename命令,其中,original_filename是当前使用的完整的路径和文件名,而new_filename是文件当前的路径和文件名。为了改变数据库文件的名字,数据库必须被安装但没有打开,

    17、因为变化要在控制文件中被记录。e.g: connect internal;startup mount;alter database rename file /u3/oradata/lyj/system01.dbf to /mnt/backup_wy/system01.dbf ;2、 如果正在移动全部或大部分的数据文件,重建控制文件会相对简单一些。而如果在备份控制文件时使用了alter database backup controlfile to trace这条语句,就会在admin/udump目录下找到重建控制文件的跟踪语句,该语句包括必须的create controlfile等命令,将该文件

    18、中的改变了的文件名代替原有的文件名和位置。 重新打开数据库应该使用resetlogs选项打开数据库,这样复位日志文件是为了保证在新的记录和那些从先前的数据库中留下的记录之间不会产生任何冲突。e.g:用备份的控制文件替换控制文件:SVRMGRconnect internalSVRMGR alter database backup controlfile to /mnt/backup_wy/control.ctl ;Statement processed.SVRMGR alter database backup controlfile to trace ;SVRMGRexitoracle|15:4

    19、1:32|/u3/oradata/lyj$cp /mnt/backup_wy/control.ctl control01.ctloracle|15:41:32|/u3/oradata/lyj$cp /mnt/backup_wy/control.ctl control02.ctloracle|15:41:32|/u3/oradata/lyj$cp /mnt/backup_wy/control.ctl control03.ctlSVRMGRconnect internalSVRMGRstartup mountSVRMGRalter database open resetlogs;请求介质恢复介质恢

    20、复是指这样一种过程:从redo日志文件中读取变化并把这些变化应用于从备份中还原的一个或多个数据库文件中,最终结果是数据库文件被更新到当前日期并且它们反应了备份后所做的所有变化,因此进行介质恢复必须把redo日志放在第一位。在ARCHIVELOG模式下运行数据库时,oracle在每个redo日志文件写满后都进行一次拷贝,这些拷贝同没有被复制的任何联机redo日志文件一起被称为是归档日志文件,形成对数据库所进行的变化的一条连续记录。如果丢失了一个数据文件并被迫从备份中还原它,那么归档日志文件中的信息将被用来将所有变化重新应用给备份发生后被建立的文件,最后的效果是没有遭受数据损失。恢复控制文件在进行

    21、介质恢复时,如果存在当前控制文件,就使用当前控制文件,如果当前控制文件在出现介质故障时丢失,那么可以用控制文件的备份拷贝,或者创建一个新的控制文件,创建控制文件的语法如下:STARTUP NOMOUNT;CREATE CONTROLFILE REUSE DATABASE LYJ NORESETLOGS ARCHIVELOG MAXLOGFILES 32 MAXLOGMEMBERS 2 MAXDATAFILES 254 MAXINSTANCES 8 MAXLOGHISTORY 907LOGFILE GROUP 1 /u3/oradata/lyj/redo01.log SIZE 500K, GRO

    22、UP 2 /u3/oradata/lyj/redo02.log SIZE 500K, GROUP 3 /u3/oradata/lyj/redo03.log SIZE 500KDATAFILE /u3/oradata/lyj/system01.dbf, /u3/oradata/lyj/tools01.dbf, /u3/oradata/lyj/rbs01.dbf, /u3/oradata/lyj/temp01.dbf, /u3/oradata/lyj/users01.dbf, /u3/oradata/lyj/indx01.dbfCHARACTER SET US7ASCII;RECOVER DATA

    23、BASEALTER SYSTEM ARCHIVE LOG ALL;ALTER DATABASE OPEN;Create controlfile命令只能在nomount选项启动数据库后发出,执行该命令之前,创建一个新的控制文件并自动安装数据库,然后新的控制文件在需要时可以用于恢复。从丢失的数据文件中恢复通常由磁盘错误引起的数据文件的丢失,是用户经常遇到的情况。如果正在ARCHIVELOG模式下运行,那么可只还原丢失的文件,把它们还原到出错的那一刻,而进行这些操作时除非system表出错,其它的文件正在运行。使丢失的数据文件脱机如果驱动器错误导致丢失了一个数据文件,那么oracle已经将这个文件脱

    24、机,可以用下列查询检查数据库中文件的状态:SQL select status,name from v$datafile ;STATUS NAME- -SYSTEM /u3/oradata/lyj/system01.dbfONLINE /u3/oradata/lyj/tools01.dbfONLINE /u3/oradata/lyj/rbs01.dbfONLINE /u3/oradata/lyj/temp01.dbfONLINE /u3/oradata/lyj/users01.dbfOFFLINE /u3/oradata/lyj/indx01.dbf在这种情况下,indx01.dbf文件是脱机的

    25、,如果已丢失的文件还没有脱机,可以通过下列命令使其脱机:alter database datafile/u3/oradata/lyj/indx01.dbfoffline;只有文件安全脱机后,才能继续还原并恢复它。其它未脱机的数据文件可以照常工作。还原丢失的数据文件在恢复文件前,使用操作系统级的复制命令还原数据文件,否则执行一条alter database rename file命令在数据库文件中记录新的位置。1恢复丢失的数据文件(2种方法) 以sysdba或system或internal身份登录后,执行recover database命令使得oracle检查所有文件并对任何需要恢复的文件进行恢

    26、复。 recover datafile /u3/oradata/lyj/indx01.dbf如果归档日志文件仍然联机,它们需要在archive_log_dest指向的文件夹中。2将已恢复的文件重新重新联机恢复完文件后是将文件重新联机,可以通过alter database命令实现。E.g:SQLalter database datafile/u3/oradata/lyj/indx01.dbfonline ;OK!文件已被恢复,已被重新联机,可以正常使用了。执行一个不完全恢复在介质故障恢复中,不丢失数据的数据库恢复称为完全恢复。如果在数据库恢复之后丢失某些数据,则称为不完全恢复。一般情况下,当所有

    27、需要的重作日志文件和备份数据文件以及当前有效的控制文件都可以使用时,应该采用完全恢复。只有当丢失了一个归档或联机重作日志文件和控制文件时采用不完全恢复。不完全恢复还可以恢复到过去的某个时间点。不完全恢复并不总是代表一个从进程错误中恢复的理想办法,因为如果联机事务正在发生而同时一个批处理进程正在运行,如果用户运行一个不完全恢复来重新运行批处理进程,那些数据就将丢失。在不完全恢复前,需要将某一次文件的全备份进行还原,然后就可以进行不完全恢复了。不完全恢复有几个选项可供选择: until cancel指定一个基于取消的恢复; until change指定恢复到一个指定的SCN; until time

    28、指定恢复到某一时间; datetime指定用户希望恢复数据库的日期和时间。SVRMGRconnect internal;SVRMGRstartup mountSVRMGRrecover database until time 20010221:10:30:00;SVRMGRalter database open resetlogs;因为在打开数据库时始用了resetlogs选项, oracle抛弃恢复中没有运用的重作纪录,并且确保永远不再运用,同时重新初始化控制文件中有关联机日志文件和重作线程的信息,可以有效地预防使用一个已存在的归档和redo日志来再次恢复,所以最好在运行完不完全恢复后立即执

    29、行数据库的另一个脱机或联机的全备份。从导出文件中还原数据库可以使用imp应用程序从导出文件来还原一个数据库。从导出文件中还原数据库比从一个文件系统的备份中还原数据库要容易,但是它具有以下一些不利因素: 还原进程时间长; 不能还原个别文件; 不能执行介质恢复,故不能恢复导出后所做的变化例子:数据文件恢复的一般过程是:=做任何恢复之前,先备份目前的系统,以防恢复过程中,系统遭到更大的损坏首先取得最后一次备份(脱机冷备份),并确保没有损坏,然后判断系统是否运行在归档模式,如果是非归档模式,则只能用最后一次全备份来恢复,删除所有的数据文件、控制文件、联机日志文件,将备份的数据文件、控制文件、联机日志文

    30、件全部拷回原目录。重新启动数据库=如果是归档模式,再判断是否可以shutdown如果当前系统不可shutdown,则进行tablespace、datafile恢复(前提是system表空间和包含活动回滚段的表空间不可损坏)如果当前系统可以shutdown,则进行recover database恢复=如果所有文件均有效、无损坏,则可进行全数据库恢复,过程如下:connect internalshutdown将数据文件、已备份的归档日志拷贝回原目录(不可拷贝控制文件)startup mountset autorecovery onrecover database;alter database open;=如果某个归档日志文件损坏,则只能恢复到那


    注意事项

    本文(Oracle管理oracle数据库的备份与恢复.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开