ORA-28547 ORACLE NET管理错误
Dec152011
今天开发环境的数据库(11.2.0.2.0)突然报ORA-28547错误。
ORA-28547: 连接服务器失败, 可能是 Oracle Net 管理错误
而且服务器(Windows Server2003)直接白屏死机,之前还是好好的,由于服务器已经死掉,只好重启,由于马上下班,开发人员打算回家加班,重启后,开发人员立即连接数据库,打算将数据库备份带走,可是服务器立马白屏,在又一次重启之后,叫开发人员不要连接数据库,修改listener.ora文件,将里面的PROGRAM = extproc一行删掉,重启监听后,再没出现过ORA-28547错误和白屏现象。
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = E:appsAdministratorproduct11.2.0dbhome_1) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONLY:E:appsAdministratorproduct11.2.0 dbhome_1binoraclr11.dll") ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ces-2q7wxtoo2c4)(PORT = 1521)) ) )
将上面的(PROGRAM = extproc)删掉,后重启监听,再没出现过ORA-28547错误和白屏现象。
PROGRAM = extproc是开发人员安装数据库的时候,ORACLE建立监听程序是自动添加的,而且之前一直好用,并没有问题,按理说不应该是PROGRAM = extproc引起的,extproc是和ORACLE访问访问操作系统的共享程序库或动态链接库(DLL)有关,可以通过extproc命令查看extproc是否正确安装。
D:>cd D:oracleproduct11.2.0dbhome_1BIN D:oracleproduct11.2.0dbhome_1BIN>extproc.exe Oracle Corporation --- 星期四 12月 15 2011 10:48:41.861 Heterogeneous Agent Release 11.2.0.1.0 - Production
显示以上信息标识extproc安装这确,可是检查系统环境变量的时候,发现LD_LIBRARY_PATH环境变量,没有设置,若设置LD_LIBRARY_PATH环境变量,这个问题也可以解决,但是目前开发环境再没出现这个问题,目前无法模拟这种方法。