1.我用的oracle92版本运行进入"oracle Enterprise Manager Console" 时用system 登陆时报错:ora-12154:TNS:无法处理服务名;
2.cmd--sqlplus--conn  用户\密码@oa   时可以连接.
3.打开"Oracle Net Manager"测试连接时,我建得3个服务命名连接成功,安装时自动生产的服务命名extproc_connection_data和inst1_http连接不成功.
4.listener服务启动了.=====================================
TNSNAMES.ORA 文件内容:
# TNSNAMES.ORA Network Configuration File: d:\oracle\ora92\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.VEHICLE =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )OA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )INST1_HTTP =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = SHARED)
      (SERVICE_NAME = MODOSE)
      (PRESENTATION = http://HRService)
    )
  )EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )CGJJ =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )=====================================================
LISTENER.ORA文件内容:
# LISTENER.ORA Network Configuration File: d:\oracle\ora92\network\admin\listener.ora
# Generated by Oracle configuration tools.LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = htkj)(PORT = 1521))
      )
    )
  )SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = d:\oracle\ora92)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = orcl)
      (ORACLE_HOME = d:\oracle\ora92)
      (SID_NAME = orcl)
    )
  )
============================================
SQLNET.ORA文件内容.
# SQLNET.ORA Network Configuration File: d:\oracle\ora92\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)

解决方案 »

  1.   

    所有  HOST = 127.0.0.1 改为你本机网卡中的ip地址,或是主机名。
      

  2.   

    看过你的listener.ora和tnsnames.ora以后,觉星编写得不够规范,listener.ora与tnsnames.ora最好对应,实例名相同,实例个数相同。从你的这两个侦听文件可以看出有多外数据库实例,因此你在用oracle Enterprise Manager Console登录时,先确认登录的是哪个实例。然后用$lsnrctl status,查看该实例的服务是否已经开启。另外你是否通过net configuration assistant建立了实例连接?得选建立实例连接,然后通过oracle Enterprise Manager Console登录指定的实例才可。
      

  3.   

    看看你的isqlplusctl这个服务有没有启动
      

  4.   

    你用oracle Enterprise Manager Console登陆时不是登陆的oa