Windows服务器迁移oracle数据文件后ORA-12560故障的解决

  客户这边一台物理服务器年限比较久了,不是很稳定,里面安装的是windows 2003的系统,最近突然死机了,影响了里面安装的oracle数据库对外服务。工程师到现场开机后,复制oracle文件(包含控制文件、日志文件、数据文件)到虚拟化平台的一台安装有windows 2008服务器,这台服务器已经事先安装好了oracle数据库软件。启动oracle数据库的时候报ORA-12560错误。

  ORA-12560错误,协议适配器错误。在服务器本地起数据库的时候报这个错误,一般不是监听问题。具体到windows系统的服务器中,应该是windows服务中的oracle服务缺失(因为是刚刚把数据库文件从另一台服务器复制过来,还没添加服务)。现有oracle服务中包含的SID与当前要启动的数据库SID不符合,也就是说oracle注册表中丢失了oracle实例配置信息。

  Oracle在windows系统中有一个专门的命令:oradim来管理数据库的实例服务。

  oradim -new -sid ORCL    ##新增数据库ORCL实例,这样windows服务列表中就有了ORCL实例对应的服务。这个时候该服务是手动状态的。

       oradmin -new -sid orcl -startmode auto -spfile  ##这样可以让windows服务自动拉起Oracle数据库。注意:如果是pfile的话需要指定pfile路径。

  通过oradmin添加新的oracle SID后,数据库正常启动,问题解决。

posted @ 2021-04-26 22:25  曹翼宾的自留地  阅读(589)  评论(0编辑  收藏  举报