Oracle 10G 提示连接到空闲例程,怎么解决啊?

如题所述

这种错误说明我们的数据库没有打开,执行startup打开数据库就OK啦
操作如:
SQL> conn /as sysdba
已连接到空闲例程。
SQL> startup
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file 'D:\oracle\product\10.2.0\db_1/dbs/spfileor
cl.ora'----这是由于,我将spfileorcl备份到别的位置了,拷贝回来就OK了
ORA-27041: unable to open file
OSD-04002: ????????????
O/S-Error: (OS 2) ??????????????????????
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 612368384 bytes
Fixed Size 1332348 bytes
Variable Size 199928708 bytes
Database Buffers 406847488 bytes
Redo Buffers 4259840 bytes
数据库装载完毕。
数据库已经打开。
SQL>
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-05
执行startup命令;
看结果提示,然后再判断情况,大概有2种情况:
1.当前命令没有设置ORACLE_SID,或者设置错误;
2.数据库实例出现问题,导致Oracle无法启动,查看alter错误信息;
然后解决问题吧!~追问

还是这个样子呢,怎么办呀

追答

你看一下参数文件里的这个参数的值:
db_recovery_file_dest
确定目录是否存在,如果不存在了,建立一个目录,并赋予Oracle用户和组的权限,然后启动。
应该就没啥问题了。

本回答被提问者和网友采纳
第2个回答  2011-12-13
你的数据库没有打开。在windows的service.msc中可以看到oracleSID那个服务没有启动,直接启动即可,在linux下面用连接到空例程后直接startup即可。
oracle 除了DBA可以连接到空例程启动database外,其他非DBA用户的验证是通过database本身谁的。所以没有启动database前是不能验证dba以外的用户的。即使是在SQLNET.AUTHENTICATION SERVICES 中配置NTS
第3个回答  2011-12-13
说明你的实例没有启动
用sysdba 用户登录sqlplus 然后执行startup 即可。
相似回答