ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在

    近期,处理一个oracle for windows数据库故障,前期场景是:操作员由于在sqlplus中执行move命令

移动数据库到新的表空间来消除碎片,但是执行时间长,操作员以为是命令死掉了,就取消掉,没想到取

消一直卡着,操作员就把数据库关闭掉,把以前实例还在运行中的备份数据文件,直接覆盖现在数据文件。

然后,操作员在执行操作就报错,操作员就把数据库关闭掉,结果数据库无法启动。在后续恢复过程中,

我重建了控制文件,因为没有开归档,不能执行完全恢复,恢复肯定有数据丢失,这一点客户接受,恢复

过程还算顺利,但是,恢复过程中遇到了启动:ORA-24324&ORA-01041内部错误hostdef扩展名不存在。

     具体的报错信息如下:

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第1张图片

 

  我不理解的是,在操作过程中,修改数据库默认Undo表空间失败,想关闭实例通过pfile来修改,结果遇到了

ORA-24324&ORA-01041内部错误hostdef扩展名不存在。该问题的排查和处理过程如下:

1、首先,检查oracle数据库服务是否启动,结果是数据库和监听服务均处于启动状态

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第2张图片

 

2、通过任务管理器检查oracle进程是否存在,oracle.exe进程存在,但是内存占用量不正常

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第3张图片

3、在sqlplus直接通过startup命令启动实例,提示hostdef问题

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第4张图片

 

4、从操作系统层次手工发起关闭oracle实例服务

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第5张图片

 

5、再次通过pfile文件启动实例,依然提示hostdef问题

 

6、度娘一下,提示关闭当前cmd,另外开启cmd,sqlplus登陆空实例启动可解决hostdef,问题变成tns相关ORA-12560错误

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第6张图片

到这,连sqlplus也无法登陆,空实例都无法连接到了。无奈之下,选择重启windows服务器,发现问题神奇般的解决了:

ORACLE for windows 启动之ORA-24324&ORA-01041内部错误hostdef扩展名不存在_第7张图片

 

你可能感兴趣的:(ORACLE数据库)