在数据库有备份的情况下,日志文件的丢失还是比较容易恢复的.尤其是数据库使用的是Rman备份,控制文件自动备份的情况下日志文件还是很容易恢复的.
1.丢失的是非当前活动日志,可以直接使用alter database clear logfile group x;来重建日志文件,
如果日志文件没有归档,可以使用alter database clear unarchived logfile group x;来重建日志文件即可.
2,如果丢失的是当前活动日志,但是数据库是正常关闭的.在oracle 9i中,可能无法对当前日志进行clear,需要通过until
cancel恢复后,resetlogs打开.
SQL>recover database until cancel;
SQL>alter database open resetlogs;
3,如果丢失的是当前日志,当数据库是异常关闭的,可以通过设置隐含参数的方法强制打开数据库
SQL>alter system set "_allow_resetlogs_corruption"=true scope=spfile;
SQL>shutdown immediate;
SQL>startup mount;
SQL>alter database using backup controlfile until cancel;
SQL>alter database open resetlogs;
4,然后在对关闭数据库,重新对数据库做一次全备份就可以了
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24570973/viewspace-753758/ ,如需转载,请注明出处,否则将追究法律责任。