经过几次尝试,终于rman恢复控制文件成功。其中碰到了不少问题,记下,备查。
1.shutdown immediate
半天没反应
这个问题查了网上一些资料,看了自己的alert日志,大概的思路是:此时有等待发生,查看自己日志中因为等待导致shutdown
hang住的情况有四种:
SHUTDOWN: waiting for active calls to
complete.
Waiting
for dispatcher ‘D000′ to shutdown
//或者D001,D002
Waiting for shared server ‘S000′ to
die
SHUTDOWN: waiting for logins to complete.
我的看法是:其他一些进程hang住导致shutdown不能完成,结合我自己的情况可能是内存不够,具体原因还不是太清楚,留待下来搞清楚。
2.rman恢复控制文件,要在DB startup
nomount之后才行。
3.为什么要set
dbid=…..?
因为目标数据库控制文件丢失,在此处必须指定dbid
3.restore controlfile
from autobackup;语句需要配置自动控制文件备份打开才行:configure
controlfile autobackup on.如果以前修改过AUTOBACKUP的格式和路径,那么在恢复之前需要进行重新设置指明自动备份所在路径。
也可以说使用命令restore controlfile from
‘d:\backup\C-3391142503-20070718-04′;类似命令来手动指定控制文件备份源。
4.为什么使用alter
database open resetlogs启动数据库?
由于使用备份的控制文件恢复,该文件内不包含目标数据库redologs和数据文件头部scn信息,所以必须通过resetlogs方式open