当前位置: 代码迷 >> Oracle管理 >> ORA-03113: end-of-file on communication channel 
  详细解决方案

ORA-03113: end-of-file on communication channel 

热度:637   发布时间:2016-04-24 05:39:53.0
求解:ora-28547:连接服务器失败,可能是 Oracle Net 管理失败
刚刚在登录数据库的时候出现:
  ora-28547:连接服务器失败,可能是 Oracle Net 管理失败
 
  请求达人帮忙分析原因!谢谢!

------解决方案--------------------
客户端版本是10.2.0.1.0 32位, 服务器是9.2.0.4.0 64位。客户端连接服务器报ORA-28547: 连接服务器失败, 可能是 Oracle Net 管理错误。 
状况如下: 

C:\>sqlplus "sys/oracle@vm9i as sysdba" 
SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 1月 7 13:41:20 2010 
Copyright (c) 1982, 2005, Oracle. All rights reserved. 
ERROR:
ORA-28547: 连接服务器失败, 可能是 Oracle Net 管理错误 

请输入用户名:
ERROR:
ORA-01017: 用户名/口令无效; 登录被拒绝 

请输入用户名:
ERROR:
ORA-01017: 用户名/口令无效; 登录被拒绝 

SP2-0157: 在 3 次尝试之后无法连接到 ORACLE, 退出 SQL*Plus 
  
  
而本地登录报ORA-03113错误。 
  
[oracle@PENG admin]$ sqlplus system/oracle@vm9i 
SQL*Plus: Release 9.2.0.4.0 - Production on Thu Jan 7 09:16:08 2010 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 
ERROR:
ORA-03113: end-of-file on communication channel 

Enter user-name: 
ERROR:
ORA-01017: invalid username/password; logon denied 

Enter user-name: 
ERROR:
ORA-01017: invalid username/password; logon denied 

SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus

本地操作系统认证登录却没问题 
  
[oracle@PENG admin]$ sqlplus "sys/oracle@vm9i as sysdba" 
SQL*Plus: Release 9.2.0.4.0 - Production on Thu Jan 7 09:19:12 2010 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 

Connected to:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production 
SQL> 
  
  
  
[oracle@PENG admin]$ tnsping vm9i 
TNS Ping Utility for Linux: Version 9.2.0.4.0 - Production on 07-JAN-2010 09:19:38 
Copyright (c) 1997 Oracle Corporation. All rights reserved. 
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.222)(PORT = 1521)) (CONNECT_DATA = (SERVICE_NAME = dbtest) (INSTANCE_NAME = dbtest)))
OK (10 msec) 
  

最后检查了一下监听程序的配置文件 发现多了 (PROGRAM = extproc) 
[oracle@PENG admin]$ vi listener.ora 
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = dbtest)
(ORACLE_HOME = /u01/app/oracle)
(PROGRAM = extproc)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.222)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)


手工配置监听的时候,从上面COPY下来的 就后面的那个没去掉。去掉 (PROGRAM = extproc) 
保存退出。 
  
本地登录: 
[oracle@PENG ~]$ sqlplus system/oracle@vm9i 
SQL*Plus: Release 9.2.0.4.0 - Production on Thu Jan 7 09:24:59 2010 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 

Connected to:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production 
SQL> 
  
客户端登陆: 
C:\>sqlplus admin/admin@vm9i 
SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 1月 7 14:12:25 2010 
Copyright (c) 1982, 2005, Oracle. All rights reserved. 
  相关解决方案