有关flashback的几个有用的函数
从timestamp到SCN的转换函数:SQL> select timestamp_to_scn(to_timestamp('2007-12-11 09:00:00','YYYY-MM-DD HH24:MI:SS')) from dual;TIMESTAMP_TO_SCN(TO_TIMESTAMP('2007-12-1109:00:00','YYYY-MM-DDHH24:MI:SS'))--------------------------------------------------------------------------36383520从SCN到timestap的转换函数:SQL> select scn_to_timestamp('36383520') from dual;SCN_TO_TIMESTAMP('36383520')--------------------------------------------------------------------------11-12月-07 09.00.00.000000000
恢复之重新建库step by step
之前的控制文件备份中提及到oracle推荐配置RMAN控制文件自动备份。当数据库结构发生改变或在RMAN每次成功完成备份之后,控制文件都会自动备份。这确保了nocatalog下,最新的备份对于数据库是可知的(信息存储在controlfile里)。那么,下面的步骤来模拟数据库遭到破坏,只留下之前的pfile初始化文件(1),数据文件备份(2)及controlfile自动备份(3),通过重建数据库来完成恢复。这里的原数据库为非归档运行,RMAN为nocatalog。首先要知道原数据库的DBID,本例为:1259705794C:>rman恢复管理器: Release 10.2.0.1.0 - Production on
有关controlfile的恢复
控制文件有N多,且互为备份!单独丢失一个至N-1个,都可通过从初始化文件中删除相应项或通过复制其他完好的控制文件来使数据库正常工作。若是全丢了,实属不测!可根据以下两方面来恢复:情况1,除控制文件外,数据文件和redologs完好(一致)。换句话说,也就是数据库的datafile本身而且和redo log是一致的。这样控制文件的恢复很简单!只需要从之前的controlfile backup to trace中的脚本建立新的控制文件即可(控制文件里对数据文件及联机日志文件位置的描述需要跟现实环境同步)。若没有trace文件,手工写一个脚本也可以。因为同步,之