由于开发人员强制关闭数据库,导致数据文件不一致,并且采用的是老的备份方式,alter database begin backup的方式,由于以前有备份失败,一直没有end backup,启动数据库时,找很久前的归档,这些归档都已经被删除,无法启动数据库,尝试多种方式无效
利用*._allow_resetlogs_corruption=true
*._minimum_giga_scn=1 --此参数是将scn提前,提升scn,、_minimum_giga_scn=n的含义是把SCN往前推进到nG,但请注意,只有在SCN小于nG的时候才会用到这个隐含参数,反之则Oracle会置这个隐含参数于不顾。
select file#,CHECKPOINT_CHANGE# from v$datafile_header;
查询出来结果,除以1024/1024/1024 就得到要设置的参数
然后resetlogs方式打开数据库,打开后最好逻辑备份一下数据库,并检查一下物理文件的是否损坏,需要重新创建临时表空间