oracle10 em无法连接到数据库实例,http://localhost:1158/em/显示
到实例的代理连接 
状态  失败 
详细资料  ORA-12541: TNS: 无监听程序 (DBD ERROR: OCIServerAttach) 监听服务已启动
cmd 下 lsnrctl stop后
lsnrctl start 结果如下:
 
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 12-6月 -2010 11:48:07Copyright (c) 1991, 2005, Oracle.  All rights reserved.启动tnslsnr: 请稍候...TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为D:\oracle10.2.0_2\db_1\network\admin\listener.ora
写入D:\oracle10.2.0_2\db_1\network\log\listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
启动日期                  12-6月 -2010 11:48:09
正常运行时间              0 天 0 小时 0 分 1 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          D:\oracle10.2.0_2\db_1\network\admin\listener.ora
监听程序日志文件          D:\oracle10.2.0_2\db_1\network\log\listener.log
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
  例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "orcl" 包含 1 个例程。
  例程 "orcl", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
---------------------------
listener.ora内容如下:# listener.ora Network Configuration File: D:\oracle10.2.0_2\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle10.2.0_2\db_1)
      (PROGRAM = extproc)
    )
      (SID_DESC =
      (GLOBAL_DBNAME = orcl)
      (ORACLE_HOME = D:\oracle10.2.0\db_1) 
      (SID_NAME = orcl)
    )   )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )----------------
tnsnames.ora内容如下:
# tnsnames.ora Network Configuration File: D:\oracle10.2.0_2\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )
-----------------
OracleDBConsoleorcl服务的问题整了一上午,删除服务,em资料并重建后终于能启动了,但浏览器打开em出现上述问题,
网上查了很久,感觉是这里listener.org,tnsnames.org的问题。
第一次发帖,希望好心人指点。

解决方案 »

  1.   

    确认一下连接串能否登录
    c:\>sqlplus sys/your_password@orcl  as sysdba
      

  2.   

    alter system register;试试!
      

  3.   

    谢谢回复!
    回1楼:
    sqlplus/plsql都能登录。
    回2楼:
    试过了,还是ORA-12541: TNS: 无监听程序
    --------------期待经验的前辈解答。
      

  4.   

    把所有的localhost改成ip地址试下
      

  5.   

    问题解决了。
    把%ORACLE_HOME%\db1\NETWORK\ADMIN 下的listner.ora和tnsnames.ora中的
    HOST = ,=后面写主机名即可。(我以前是localhost失败),网上说写成主机的ip也行。
      

  6.   

    IP也应该可以,我写成127.0.0.1了等于localhost了,估计错在这里。