大虾们:
    我在window xp 服务管理器中启动 oracle 9i监听器(oracle服务的倒数第二项),启动后服务显示状态为'己启动',但我刷新一下服务列表后,它的状态又变成了空(oracle服务却可以启动成功,),我在dos下用sqlplus可以连接上oracle上,用java的Jdbc却连接不上,这是什么原因啊?

解决方案 »

  1.   

    dos下执行:lsnrctl start,看看是否报错。
    端口被占用的可能性大一些。
      

  2.   

    C:\>lsnrctl startLSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 14-7月 -2008 11:0
    :26Copyright (c) 1991, 2002, Oracle Corporation.  All rights reserved.启动tnslsnr:请稍候...TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
    系统参数文件为C:\oracle\network\admin\listener.ora
    写入C:\oracle\network\log\listener.log的日志信息
    监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=?ù???÷)(PORT=1521)
    )
    TNS-12545: 因目标主机或对象不存在,连接失败
     TNS-12560: TNS: 协议适配器错误
      TNS-00515: 因目标主机或对象不存在,连接失败
       32-bit Windows Error: 1001: Unknown error----------
     我用netstat 命令查了下,1521端口没有启用啊监听程序未能启动。请参阅上面的错误消息...
      

  3.   

    (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=?ù???÷)
    ---
    因目标主机或对象不存在,连接失败
    ---
    看下tnsname.ora 你的主机名 填写对了没
      

  4.   

    第一次看到有人用中文的hostname。呵呵修改服务器端的listener.ora文件,把主机名字改成ip地址。
    然后lsnrctl start.