今天发现应用程序无法连接数据库,登陆到服务器,sqlplus / as sysdba 能登陆。说明是 监听出了问题了,查了下 监听日志 报以下错误 :
15-4月 -2012 18:13:42 * (CONNECT_DATA=(SID=orc11g)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))) * (ADDRESS=(PROTOCOL=tcp)(HOST=“此处略过”)(PORT=53666)) * establish * orc11g * 12505
TNS-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SID
15-4月 -2012 18:13:42 * (CONNECT_DATA=(SID=orc11g)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))) * (ADDRESS=(PROTOCOL=tcp)(HOST=“此处略过”)(PORT=53667)) * establish * orc11g * 12505
TNS-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SID
15-4月 -2012 18:13:42 * (CONNECT_DATA=(SID=orc11g)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))) * (ADDRESS=(PROTOCOL=tcp)(HOST=“此处略过”)(PORT=53668)) * establish * orc11g * 12505
TNS-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SID
从上面看出 无法识别描述符中的 SID ,也就是说无法识别 SID=ora11g
查看ORACLE_SID
SQL> show parameter name
NAME TYPE VALUE
------------------------------------ ----------- -------------
db_file_name_convert string
db_name string orc11g
db_unique_name string orc11g
global_names boolean FALSE
instance_name string orc11g
lock_name_space string
log_file_name_convert string
service_names string orc11g
从这上面看SID 并没有错,到这就不知道该怎么解决问题了 。
看了下日志文件达到了4G,是不是这个文件太大的原因,操作系统 Windows 2008。将日志文件删除,再删除监听,重新建了个监听。应用程序启动后开始几分钟还是报同样的错,几分钟后就恢复正常。
对此过程表示很不解,是不是该版本的一个BUG。
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0