今天登陆Oracle,发现提示错误ora-01033:Oracle正在初始化或关闭,SID=0等错误信息。上网上找了很多资料,发现这种错误通常是Oracle数据库文件破损造成的,可能由两种具体原因引起这种错误:
1.Oracle在启动后,用户登录时是要将方案中原有配置信息装载进入,装载过程中配置中有文件未找到,所以就报出错误。这可能是因为误删了某些文件。
2.并没有删除某些文件,可能是非法关机或是断电造成的。
本人想起来出问题前一天晚上曾经强制关闭了虚拟机,所以推测应该是第二种情况。
解决方法:
1.进入CMD,执行set ORACLE_SID=HaiDian,确保连接到正确的SID;
1.Oracle在启动后,用户登录时是要将方案中原有配置信息装载进入,装载过程中配置中有文件未找到,所以就报出错误。这可能是因为误删了某些文件。
2.并没有删除某些文件,可能是非法关机或是断电造成的。
本人想起来出问题前一天晚上曾经强制关闭了虚拟机,所以推测应该是第二种情况。
解决方法:
1.进入CMD,执行set ORACLE_SID=HaiDian,确保连接到正确的SID;
HaiDian就是我出问题的数据库实例的SID,这个SID可以到tnsnames.ora中查看到。
2.运行sqlplus "/as sysdba" ,然后依次执行以下语句
SQL->shutdown immediate; //关闭数据库
启动的过程中发现出了问题,有文件3出现破损
SQL->shutdown immediate; //再次关闭数据库
SQL->startup mount; //启动例程
SQL->recover datafile 3; //修复文件3,因为前面显示文件3出了问题
SQL->shutdown immediate; //再次关闭数据库
SQL->startup; //启动数据库,发现启动成功