我在我的机器(ip:10.0.0.10 name:zz)上安装oracle,但是监听没有开起,数据库连接不上;其中tnsnames文件的内容为:
####################################
# TNSNAMES.ORA Configuration File:E:\oracle\ora81\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle Enterprise Manager V2
# Date..........: Thu Oct 30 18:01:39 CST 2008
####################################ERP_ERP =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = erp)(PORT = 1521))
    )
    (CONNECT_DATA = (SID = erp)(SERVER = erp))
  )ZZ =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = zz)(PORT = 1521))
    )
    (CONNECT_DATA = (SID = zz)(SERVICE_NAME = zz))
  )INST1_HTTP =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.10)(PORT = 1521))
    )
    (CONNECT_DATA = (SERVER = SHARED)(SERVICE_NAME = zz)(PRESENTATION = http://admin))
  )# TNSNAMES.ORA Network Configuration File: E:\oracle\ora81\network\admin\tnsnames.oraEXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
    (CONNECT_DATA = (SID = PLSExtProc)(PRESENTATION = RO))
  )listener文件的内容为:# LISTENER.ORA Network Configuration File: E:\oracle\ora81\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = zz)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = erp)(PORT = 1521))
    )
  )SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = E:\oracle\ora81)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = zz)
      (ORACLE_HOME = E:\oracle\ora81)
      (SID_NAME = zz)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = erp)
      (ORACLE_HOME = d:\oracle\ora81)
      (SID_NAME = erp)
    )
  )我查看监听的日志,上面提示如下:
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zz)(PORT=1521)))
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
尝试监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=erp)(PORT=1521)))
TNS-12545: 由于目标主机或对象不存在而导致连接失败
 TNS-12560: TNS:协议适配器出现错误
  TNS-00515: 由于目标主机或对象不存在而导致连接失败
   32-bit Windows Error: 49: Unknown error
不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zz)(PORT=1521)))
不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))另外说明,host为erp的机器是我们的公司的服务器,我用客户端和sqlplus都能正常连接,
谁能给点建设性的意见!!!!

解决方案 »

  1.   

    tnsnames.ora文件中:
    ERP_ERP = 
      (DESCRIPTION = 
        (ADDRESS_LIST = 
          (ADDRESS = (PROTOCOL = TCP)(HOST = erp)(PORT = 1521)) 
        ) 
        (CONNECT_DATA = (SID = erp)(SERVER = erp)) 
      ) 改为:erp =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = erp)(PORT = 1521))   --或将本行erp改为IP地址。
        )
        (CONNECT_DATA =
          (SERVICE_NAME = erp)
        )
      )再试一下:conn 用户名/密码@erp 
      

  2.   

    用ip地址我试过了,还是一样的,我是连接自己机器上的服务不行,连接erp上的服务是可以的,还有就是我把listener文件的内容改为如下:
    # LISTENER.ORA Network Configuration File: E:\oracle\ora81\NETWORK\ADMIN\listener.ora 
    # Generated by Oracle configuration tools. LISTENER = 
      (DESCRIPTION_LIST = 
        (DESCRIPTION = 
          (ADDRESS = (PROTOCOL = TCP)(HOST = zz)(PORT = 1521)) 
        ) 
        (DESCRIPTION = 
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)) 
        ) 
    ) SID_LIST_LISTENER = 
      (SID_LIST = 
        (SID_DESC = 
          (SID_NAME = PLSExtProc) 
          (ORACLE_HOME = E:\oracle\ora81) 
          (PROGRAM = extproc) 
        ) 
        (SID_DESC = 
          (GLOBAL_DBNAME = zz) 
          (ORACLE_HOME = E:\oracle\ora81) 
          (SID_NAME = zz) 
        )
     ) 结果,本地监听服务启动起来了,但是其他我自己写的连接oracle的程序都提示:ora-12154 tns:can not resolve service name,然后我到程序(delphi7)里面从新连oracle也是提示出错。