服务器断电重启后,报Oracle数据库服务无法启动,在服务器上使用AS SYSDBA 登录后连接到空实例,使用startup启动时报‘ORA-24324: 未初始化服务句柄,ORA-01041: 内部错误, hostdef 扩展名不存在’错误。
分步启动startup nomount ,依然报以上错误,判断为spfile文件损坏造成。但本机没有使用pfile备份过spfile,而修改spfile要启动修改。
解决办法,手工创建pfile 文件INITSID.ORA,打开alert日志,找到数据库启动信息,把信息复制粘贴到INITsid.ORA,文件中,使用pfile启动数据库 startup pfile='$ORACLE_HOME/database/INITSID.ORA',启动成功。
创建spfile, create spfile from pfile.问题解决 !
总结:1 注意用pfile备份spfile 2 修改任何数据库参数前一定要先使用pfile备份。