在网上查找出现这种错误的原因一般是因为删除数据库 安装文件下的某个文件造 成的,
但是在我们的服务器上是因为 机子重启(意外断电)了一下就造 成这样的错误,不过解决办法是一样的,下面贴上解决方案
解决步骤:
以DBA(通常有好几个sys或system)用户sqlplus登录
请输入用户名: system/sys as sysdba
然后(卸载数据)输入:
SQL> shutdown normal
会出现:
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
然后(装载数据)输入:
SQL> startup mount
ORACLE 例程已经启动。
数据库装载完毕。
之后:
SQL>alter database open;
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 6 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 6: 'D:/ORACLE/PRODUCT/10.1.0/ORADATA/RAILWAY/2008_1.DAT'
SQL> alter database create datafile 6;
数据库已更改。
SQL>alter database open;
第 1 行出现错误:
ORA-01113: 文件 6 需要介质恢复
ORA-01110: 数据文件 6: 'D:/ORACLE/PRODUCT/10.1.0/ORADATA/RAILWAY/2008_1.DAT'
SQL> alter database datafile 6 offline drop;
数据库已更改。
继续
SQL>alter database open;
如果出现以上错误,继续执行相关操作,上面的6要和create和drop对应。
如果
SQL> alter database open;
出现了:
数据库已更改。
则成功了。
这时可以再用PL/SQL等客户端工具,登录操作数据库了。
-----------=========================------------------------
如果出现以下错误:
ORA-00600: 内部错误代码,参数: [kcratr1_lostwrt], [], [], [], [], [], [], []
原因:
可能是非法关机或掉电造成,以下是出 现的问题及解决方法:
SQL> shutdown immediate
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。 Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
SQL> recover database;
完成介质恢复。
SQL> alter database open; 数据库已更改。
SQL>exit;