ORACLE数据库备份和恢复徐立第一部分常规备份和恢复1-3Copyright ? Oracle Corporation, 2002. All rights (一)一Oracle数据库错误主要分为5大类:,,,也包括shutdown abort等操作发生此三种失败,Oracle系统会自动进行恢复,做提交或者回滚。那么具体在什么时候需要做数据库恢复呢?下面我们讲讲ORACLE的错误分类1-4Copyright ? Oracle Corporation, 2002. All rights (二),TRUNCATE表等DDL,DML操作此种情况下的恢复方法可以导入最新的逻辑备份或进行到某一时间点的不完全恢复,再将后续数据进行补充,对于生产节点的数据库,可进行基于表空间的时间点恢复(TSPITR),单独将包含错误操作的表空间恢复到指定时间,而不必对整个数据库进行不完全恢复,但如果表不在单独的表空间内就需要将备份集在异地做恢复,然后在将数据导入到当前库。此外,在错误操作发现比较及时而且数据量不大的情况下也可以考虑使用logminer生成反向SQL进行恢复1-5Copyright ? Oracle Corporation, 2002. All rights (三)(ORACLE的物理文件异常的情况)存储设备的失败的情况比较复杂也是备份恢复中的重点,存储设备的失败必然会使放置在其上的文件变为不可用,从而导致数据库访问异常,我总结了下主要有以下几种情况:Oracle的运行文件,包括各种应用程序此类应用程序要求程序员和系统管理员做好备份(做操作系统备份亦可),因为应用程序增,删,改,在数据库日志上是不做纪录的。故很难找到故障恢复的时间点,恢复起来会有很大困难的。数据库控制文件控制文件中记录着整个数据库的结构、每个数据文件的状况、、检查点计数器等重要信息,在创建数据库时会让用户指定三个位置来存放控制文件,他们之间互为镜像,当其中任何一个发生故障,只需将其从ini文件中注释掉故障数据文件就可重新将数据启动。1-6Copyright ? Oracle Corporation, 2002. All rights (四)一当所有控制全部失效时,可以在Nomount模式下执行控制文件重建命令,但必须提供redo log,data file,文件名和地址以及MAXLOGFILES,MAXDATAFILES,MAXINSTANCES等信息。如果失败之前运行过alter database backup controlfile to trace或alter database backup controlfile to ‘xxx’对控制文件作备份,恢复时可使用生成的脚本来重建或用备份文件覆盖,如果使用了旧的控制文件在恢复时要使用recover xxx using backup controlfile选项来进行恢复,并使用resetlogs选项来打开数据库。数据库联机重做日志文件错误如果丢失的是联机日志文件,有两种错误情况:a、丢失的是非活动的日志文件;b、丢失的是当前激活的日志文件。此两种情况后续做详细讨论数据文件丢失包含在SYSTEM表空间的数据文件;2丢失没有回滚段的非SYSTEM数据文件;3、丢失有回滚段的非SYSTEM数据文件。具体操作后面恢复章节做详细讲解。1-7Copyright ? Oracle Corporation, 2002. All rights (五)一归档日志文件错误归档文件或归档文件所处的物理位置不可用,首先shutdown数据库,立即作一个冷备份。然后修改ini文件中的归档日志文件目的路径,重新启动数据库。以后再发生灾难只需从最新的备份中将相关文件恢复,数据库作recover时就不需要备份之前丢失的归档文件了。在ORACLE中提供了log_archive_duplex_dest和log_archive_dest_1...5等参数允许保留多份归档文件到不同位置,甚至到远端服务器从而保证归档文件的可靠性。具体恢复方法后续介绍1-8Copyright ? Oracle Corporation, 2002. All rights Backup(冷备份)主要指在关闭数据库的状态下进行的数据库完全备份,备份内容包括所有
a 培训 来自淘豆网www.taodocs.com转载请标明出处.