recover时报错ora-289,有意思

oracle的alter database recover语句实在很弱智,明明目录中有arch文件,却不去找这个文件。
看下面的2个例子:

可见,不加automatic只能还原redo中的东西。

不过,如果我们用recover datafile语句,就没这么弱智了,至少还有个交互界面提示你输入auto,还是cancel还是指定某个arch:

另外,除了上述的方法,我们还能用rman来实现,连auto都不用指定了,呵呵:

或者,在recover datafile之前set一下,也能和rman的效果类似的,不需要在另外的指定auto:

结论:
恢复脱机的数据文件时候,如果恢复的内容不在online redolog中,我们可以:
1、recover datafile XXX 然后指定auto。
2、用rman recover datafile。
3、set AUTORECOVERY ON之后用recover datafile XXX。
4、尽量避免用alter database recover datafile。如果用,就用alter database recover automatic datafile XXX。
其实在oracle的文档中也说了(点击此处):

相关文章

4条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据