《oracle从入门到精通(PDF格式)》第36章


1、SHUTDOWN IMMEDIATE
2、操作系统COPY 所有的数据库数据文件
3、重新启动数据库
4、使用 ALTER SYSTEM SWITCH LOGFILE 命令强制执行一个联机重做日志的切换。一旦 
归档了联机重做日志,那么就备份所有的归档日志;
5、使用 ALTER DATADBASE BACKUP CONTROL FILE TO TRACE 命令和ALTER DATABASE BACKUP
CONTROLFILE TO "file_path" 命令创建一个控制文件的备份。
备份表空间和数据文件:
1、alter tablespace space_name begin backup;
2、backup db_file。dbf(操作系统 COPY)
3、alter tablespace space_name end backup;
4、使用 ALTER SYSTEM SWITCH LOGFILE 命令强制执行一个联机重做日志的切换。
5、一旦完成了日志的切换并归档了当前的联机重做日志,就备份左右的归档重做日志。
需要注意的是:日志切换和归档日志的备份是必须的,这是因为恢复操作必须应用在备份期 
间生成的所有重做。
第 102 页,共 106 页 
…………………………………………………………Page 103……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
SCN 冻结的表空间(BACKUP 状态)仍然可以对数据进行操作。
备份状态的信息:
VBACKUP
只读表空间备份的问题:
*、当表空间被切换到只读状态后;只需要备份一次。
*、在只读表空间切换回读写状态后;重新加入到正常备份的策略中。
*、控制文件必须能够正确的表示出表空间的只读状态;否则必须执行数据库的恢复操作。
手工执行控制文件的备份:
创建二进制映像
ALTER DATABASE BACKUP CONTROLFILE TO ‘control1。bkp‘;打开状态下创建文本跟踪文件
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
2。数据库的恢复
1。在 NOARCHIVELOG 模式下的恢复:
1。 完全依赖手动备份。
2。 必须恢复的文件:
数据库数据文件;
控制文件;
3。 可选的恢复文件:
重做日志文件;
参数文件;
口令文件;
可以简单的恢复所有的数据库数据文件、控制文件和联机重做日志文件,然后在启动数据库。
这种恢复只能恢复到恢复到最后备份的时间点,而不能恢复这个备份时间点后的任何更改。
任何数据库中的一个数据文件损坏都必须恢复所有的数据文件。
2。在非归档方式不使用备份的重作日志进行恢复:
1。关闭数据库。
2。从最近的完整数据库备份中回复数据文件和控制文件。
3。执行基于cancel(放弃)的恢复。
4。使用RESETLOGS 选项打开数据库。
3。ARCHIVELOG 模式下的完全恢复:
概念:
完全恢复:
使用重作日志记录或者增量备份以更新数据库到最接近当前的时间
应用所有的重作日志记录
不完全恢复:
第 103 页,共 106 页 
…………………………………………………………Page 104……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
使用备份和重作日志记录以生成一个非当前版本的数据库
完全恢复的优点和缺点:
优点:
只需要回复丢失的文件
恢复所有数据到数据库故障的那一刻
恢复时间是回复丢失文件的时间与应用所有归档日志文件时间的总和
缺点:
必须有从备份开始的所有归档日志文件
决定哪个文件需要被恢复:
*、察看 VRECOVER_FILE视图以决定哪个数据文件需要被恢复
*、察看 VARCHIVED_LOG以得到数据库的所有归档日志文件列表
*、察看 VRECOVERY_LOG得到所有在恢复中需要的归档日志文件
在恢复过程中使用归档日志文件:
1。 为了改变归档的位置:
使用 ALTER SYSTEM ARCHIVE LOG。 。 。命令。
2。 为了自动应用归档日志文件:
在开始介质恢复前执行 SET AUTORECOVERY ON 命令
当提示输入归档日志文件时输入 auto
使用 RECOVER AUTOMATIC。 。 。 命令。
假顶数据库故障至少没有损坏当前每个联机重做日志组中的一个成员和没有备份的任何归档重 
做日志,我们可以在 ARCHIVELOG 模式恢复故障点的数据库。
如果丢失了归档的重做日志或联机重做日志就需要执行某种形式的时间点恢复;
如果丢失了当前控制文件的所有副本,就需要恢复控制文件并执行不完全恢复;
1。 完全恢复步骤:
1、从备份中还原所有的数据库数据文件;
2、还原所以备份的归档的重做日志;
3、加载数据库(start mount);
4、恢复数据库(recover database);
5、ORACLE 提示应用归档的重做日志中的重做,在提示符下简单地输入 AUTO,ORACLE会自动 
应用 所有重做日志;
6、一旦应用了所有的重做日志,就可以打开恢复的数据库(alter database open);
ARCHIVELOG模式下的表空间恢复和数据文件恢复:
2。 在数据库加载或数据库打开可执行表空间恢复和数据文件恢复。
2。1 在打开阶段执行表空间恢复步骤:
1、使表空间脱机(alter tablespace offline);
2、还原与要恢复的表空间相关联的所有数据文件;
3、恢复表空间(recover tablespace);
4、一旦完成了恢复,使表空间联机(alter tablespace online);
2。2 恢复数据文件步骤:
1、使数据文件脱机(alter database datafile "file_path" offline);
2、还原所有要恢复的数据文件;
第 104 页,共 106 页 
…………………………………………………………Page 105……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通 
3、恢复数据文件(recover datafile);
4、一旦完成了恢复,就可以是数据文件联机(alter database datafile "file_path" online);
3。恢复一个从未备份过的数据文件:
*、丢失的数据文件从未备份过
*、如果丢失的是一个系统表空间的数据文件;则不能使用这种方法
步骤:
1、是数据文件或表空间 OFFLINE;
2、应用归档日志重新创建数据文件;???
3、open database;
4、是表空间或数据文件 ONLINE;
控制文件的丢失:
如果在下列情况;可能需要重建控制文件:
所有的控制文件由于故障而丢失
数据库的名字需要被改变
控制文件的当前设置需要被改变
恢复控制文件:
恢复丢失的控制文件的方法:
使用当前的控制文件
创建一个新的控制文件
四种情况下重建控制文件:
数据库一些特性参数要改变的时候;
数据库需要重命名的时候;
控制文件全部丢失的时候;
使用一个备份的控制文件
4、ARCHIVELOG模式下的不完全恢复
小说推荐
返回首页返回目录