Oracle10g, winXP,本机连接。使用SQL *Plus 可视化工具时出现这个错误。在命令提示符里输入sqlplus可以进入控制台的sqlplus.,进行网络测试也是成功的。总之是除了不能进入SQL *Plus 可视化工具,其他一切正常。EM也是进入,没有任何问题。尝试了一下办法解决:
1.打开tnsnames.ora文件。发现文件并没有破坏。listener.ora文件也核对过多次,都无问题。2.在windows服务里停止oracle的一切服务,然后重新启动,问题依然存在3.监听器、Net服务名等都多次重新配置,测试连接都可以成功。4.IP、主机名都试了,都不行真的不知道是啥问题了。试着在另一台机子上按照的oracle10g也是同样的问题,重新卸载后安装还是同样的问题。我按照的oracle是10gwin版本(里面只有一张disk1的那个)。企业版、标准版都试过了,都是一样的问题。已经研究了2、3天,实在没辙了,高手指点一下吧,感激万分!附配置文件如下:
# listener.ora Network Configuration File: D:\DATABASE\oracle\product\10.1.0\Db_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\DATABASE\oracle\product\10.1.0\Db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = stock)
      (ORACLE_HOME = D:\DATABASE\oracle\product\10.1.0\Db_1)
      (SID_NAME = stock)
    )
  )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = xmusos)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
  )
======================================================================
# tnsnames.ora Network Configuration File: D:\DATABASE\oracle\product\10.1.0\Db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.STOCKS =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = xmusos)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = stock)
    )
  )EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )=======================================================
# sqlnet.ora Network Configuration File: D:\DATABASE\oracle\product\10.1.0\Db_1\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

解决方案 »

  1.   


    难道还要安装oracle10g客户端嘛?
    安装完企业版或者标准版已经自带了吧?
      

  2.   

    在使用netmgr进行配置监听程序时可能会出现问题,最好使用netca对监听进行配置,而使用netmgr对命名服务进行配置。
      

  3.   

    tnsnames.ora文件中:
    STOCKS =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = xmusos)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = stock) 
        )
      )
    把(CONNECT_DATA =
          (SERVICE_NAME = stock) 
        )
    改为
    (CONNECT_DATA =
          (SERVICE_NAME = STOCKS) 
        )试试行不行。