首先这里我们先介绍四个SCN概念。
1、系统检查点scn当一个检查点动作完成后,Oracle就把系统检查点的SCN存储到控制文件中。select checkpoint_change# from v$database;
2,数据文件检查点scn当一个检查点动作完成后,Oracle就把每个数据文件的scn单独存放在控制文件中。
select name,checkpoint_change# from v$datafile;
3,启动scn
Oracle把这个检查点的scn存储在每个数据文件的文件头中,这个值称为启动scn,因为它用于在数据库实例启动时,检查是否需要执行数据库恢复。
select name,checkpoint_change# from v$datafile_header
4、终止scn每个数据文件的终止scn都存储在控制文件中。
select name,last_change# from v$datafile
以下条件需要使用using backup controlfile
1)、使用备份控制文件
2)、重建resetlogs控制文件,如果重建立noresetlogs不必要使用using backup controlfile
2、alter database open resetlog 指定RESETLOGS将重设当前LOG sequence number为1,抛弃所有日志信息。以下条件需要使用resetlog
1)在不完全恢复(介质恢复)
2)使用备份控制文件使用resetlogs打开数据库后无必完整地备份一次数据库。3、create controlfile resetlogs/noresetlogs
1).用Noresetlogs重建控制文件时,控制文件中 datafile Checkpoint来自Online logs中的Current log头
2).用Resetlogs重建控制文件时,控制文件中datafile Checkpoint来自各数据文件头。
当system scn,datafile scn,start scn 不全相等,需要介质恢复,如果stopscn null需要实例恢复
resetlogs抛弃所有在上一次恢复没有用到的日志信息,确保不被重新用与恢复。
1、系统正常关闭:
system scn=datafile scn=start scn=stop scn
1)system scn=datafile scn=start scn,不需要介质恢复
2)stopscn not null,不需要实例恢复
2、系统异常关闭:
system scn=datafile scn=start scn,stop scn null
1)system scn=datafile scn=start scn,不需要介质恢复
2)stopscn null,需要实例恢复
3、旧数据文件
system scn=datafile scn>start scn,stop scn null/notnull
1)system scn=datafile scn>start scn,需要介质恢复成system scn=datafile scn=start scn
2)stopscn null,需要实例恢复,not null 不需要实例恢复
4、备份控制文件
system scn=datafile scn<=start scn(当数据文件为旧的相等),stop scn notnull/null
1)system scn=datafile scn<=start scn,需要使用using backup controlfile介质恢复成system scn=datafile scn=start scn=current log scn(当前日志最大SCN)
2)为保证上一次恢复没有用到log日志不被使用,必须resetlogs
5、重建noresetlogs控制文件控制文件中 datafile Checkpoint来自Online logs中的Current log头
current log scn=system scn=datafile scn>=start scn,stop scn not null/null
1)current log scn=system scn=datafile scn>=start scn,需要介质恢复成system scn=datafile scn=start scn=redolog scn(当前日志最大SCN),stop scn not null
2)stopscn not null 不需要实例恢复
6、重建resetlogs控制文件控制文件中datafile Checkpoint来自各数据文件头。
system scn>=datafile scn=start scn,stop scn not null/null
1)system scn>=datafile scn=start scn,需要使用using backup controlfile介质恢复成system scn=datafile scn=start scn(当前日志最大SCN),stop scn not null
2)stop notnull,因为SCN已经为redolog scn,log已经不能使用,必须resetlogs
Recover database
Hi,
Oracle TimesTen In-Memory Database
Real-Time Data Management for Performance Critical Applications
Oracle TimesTen In-Memory Database empowers applications with instant responsiveness and very high throughput for performance-critical functions in real-time enterprises and industries such as telecom, capital markets, and defense. With an Oracle TimesTen In-Memory Database, your applications are able to access, capture, or update information many times faster—giving you the power to attract and retain more customers, sense and respond to business-critical events when they are most valuable, and deliver new services—all while using standard relational database technology and familiar programming interfaces. With TimesTen your applications are instantly responsive, highly scalable, and continuously available.
(Extract of the link)
You can vist here for white paper, download, etc
http://www.oracle.com/database/timesten.html
Adith
test
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/92530/viewspace-127999/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/92530/viewspace-127999/