选择显示字体大小

通过backup exec实施oracle灾难恢复

恢复之前:

1、full closed备份

shutdown数据库(不要用shutdown abort强行关闭),实施一个文件级备份,备份全部的oracle相关文件,包括windows系统文件,系统状态和oracle程序文件和数据文件等内容。

这个冷备份对于快速恢复oracle数据库系统非常关键,如果没有它,系统被破坏后只能重新安装再恢复,这要比直接恢复冷备份慢得多,也更复杂。

每当数据库或表单的物理结构或逻辑结构有变化时都应该重新创建这个冷备份。

2. full online备份

这个备份要通过backup exec agent for oracle server来完成,要备份全部表空间,归档日志和控制文件,通过这种方式备份,oracle会将所有缓存内容写入文件,将online redo log做归档,所以数据库备份中包含的是备份时数据库的即时点信息,完整而且有效。以后做恢复时,可以恢复到最后一次full online备份的状态。

恢复过程:

1. 重新安装windows系统和remote agent for windows server,为恢复oracle服务器准备环境。

2. 恢复最后一次full closed备份,重新启动计算机。

此时windows系统,oracle数据库系统都是完整的,只是oracle数据库中可能不是最新的数据。backup exec agent for oracle server也不用重新安装了。

3. 用sqlplus用sys以sysdba身份连接到数据库系统,关闭数据库

shutdown immediate + < enter >

4. 通过介质服务器恢复最新的full online备份,恢复作业属性的高级选项中,确保选中了“restore over existing files(覆盖现存文件)” 选项。

要想成功的恢复数据库,在最后一次full closed备份之后的所有redo log必须都已经成功归档并备份。少了哪一个,数据库就无法恢复到最后的full onli ne备份时的状态。

通过oracle的alert log可以看到数据库的恢复需要哪些归档日志,以及你应该把它们恢复到什么位置。

5. 恢复完成后,用sys用户以sysdba身份连接到数据库,将数据库加载到mount阶段:

startup mount + < enter >

6. 数据库mount完成后,执行recover过程:

recover database using backup controlfile + < enter >

数据库会提示你需要哪些日志:

ora-00279: change 36579 generated at

最简单的方法是选自动恢复:

auto + < enter >

系统会在init.ora文件中定义的位置上查找所有必需的日志并依次应用它们,最后一个要应用的日志是online redo log,实际上它并不包括任何的transaction,只有一个scn,可以略过,但是自动恢复过程会因为找不到相应的文件而报错:

ora-00308: cannot open archived log

    'e:\oracle\oradata\kimstad\archive\kimstadt00036949.arc'

    ora-27041: unable to open file

    osd-04002: unable to open file

    o/s-error: (os 2) the system cannot find the file specified.

    为此输入以下命令(until cancel参数使我们可以在需要的时候中止恢复过程):

    recover database until cancel using backup controlfile +

    这样在数据库恢复的最后阶段再次提示前面的错误时,我们就可以中止恢复过程:

    cancel + < enter >

    这时除了最后一个online redo log以外,所有的commit transaction都已经提交到数据库之中了,完成后会显示:

    media recovery canceled

    实际上恢复过程已经正常完成了。

    最后是打开数据库并同步日志序列号:

    alter database open resetlogs + < enter >

    至此,oracle数据库被成功恢复到最后一次full online备份。

    说明:oracle 8i可以用internal账号完成dba操作。9i取消了internal账号,sys账号代替它了。为了以dba身份登录,启动sql plus时应该加nolog参数,进入之后再登录,connect username/password as sysdba。



  


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons