解决:OracleOraDb10g_home1TNSListener服务无法启动!

最近学习hibernate时,在myeclipes上 关联数据库时出现  OracleOraDb10g_home1TNSListener服务无法启动!!这个问题。
问题的前提条件有:1.能通过sqlplus 进入数据库,数据查询等操作正常。就是与其他介质关联的时候出现该问题,如通过myelcipes 添加数据源,通过jdbc连接数据库等
  这种问题最常见的可能性有2种:

1,用户网络连接设置成自动获取ip地址。这样orlace 服务器的地址就不为127.0.0.1了。

解决办法: D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN 到这个目录下去找到listener.ora文件。打开该文件
如下:
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = e:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = oracle)
      (ORACLE_HOME = e:\oracle\product\10.2.0\db_1)
      (SID_NAME = oracle)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 168.3.0.1)(PORT = 1521))
    )
  )
修改带红色字体的为:localhost

2 种:输入的oralce实例名字错误
在sql 命令下 输了SELECT host_name, instance_name, version FROM v$instance;
得到的即为oracle实例名字 如果得到的该实例名字与listener.ora文件(ORACLE_HOME = e:\ oracle\product\10.2.0\db_1
不符合的话,则替换为得到的实例名。

你可能感兴趣的:(listener)