服务器:win2000+oracle 8.17服务器
客户端:win2000+oracle 8.17客户一直用的很正常。但前天突然不能连了。
请注意,一直是很很正常,在出事之前,服务器没有作任何改动。现在客户端能连接其他的服务器,所以肯定是服务器端有问题。但就是不知道问题出在哪。检查网络正常,互相都能 PING 通,也没有丢包情况。
在客户端先删除数据库,然后用Net8 Configuration Assistant重新“本地网络服务名配置”,但测试就是不能通过。
将服务器重新启动也不行。
tnsnames.ora文件正常。以前出现此类问题,总是重做了事。一直没有解决成功过,希望在这里,能得到一个好的解决方案。
谢谢啦!

解决方案 »

  1.   

    tnsping 的测试结果如何?
    tnsping 的测试报错。
    但用telnet 测1521端口可以的。
      

  2.   

    检查服务器上的监听。lsnrctl status
      

  3.   

    tnsping 的测试报错是什么错误信息。在服务器上也tnsping,看看结果怎样。
      

  4.   

    tnsping 的测试报错是超时。
    服务器上没办法测了,因为工作不能耽误,只能先重做了。
    当时忘了在服务器上 tnsping 了。因为服务器上的能用,估计 tnsping 肯定能通,所以就没做。
      

  5.   

    晕死!
    我又出现一例:
    ping 通,正常
    tnsping 通,正常
    用Net8 Configuration Assistant测试通过。但就是不能登录。提示:不能识别的服务名
    用SQLPLUS也不行郁闷!!!!!
      

  6.   

    改过IP了没? 服务器要用固定IP
    改过客户端的sqlnet.ora没?
      

  7.   

    没有改过IP.一直是固定的.
    客户端的sqlnet.ora也没有改.
      

  8.   

    如果只是一台客户端突然不能连接,考虑检查该机器上%ORACLE_HOME%\network\admin下的sqlnet.ora,tnsnames.ora是否与其他机器上的一样;还有就是这台机器上是否只有一个tnsnames.ora,这台机器上是否只安装了一套oracle客户端?
      

  9.   

    服务器一共有好几个客户端.现在只有服务器自己那台机子的客户端软件能正常工作.配置文件没错----和以前的一模一样.客户端只安装了一套oracle客户端----这有什么问题吗?
      

  10.   

    在客户端执行tnsping正常,但执行sqlplus,却报"ORA-12154: TNS: 无法处理服务名",那么估计是机器上存在多个版本的oracle客户端或者sqlplus与tnsping不存在同一个目录。搜索那台机器,看看有几个tnsping和sqlplus,是否都是在%ORACLE_HOME%\bin目录下。
      

  11.   

    谢谢bobfang(匆匆过客) :客户端里只有一个版本的 oracle 客户端。再说一下,就是昨天一切用的都是正常,就是突然不能用了。检查文件、配置文件都正常。
      

  12.   

    使用过程中,是不是有人 更改了服务器的 机器名? tnsnames.ora 文件里面经常用 机器名来写,而且好像更改了机器名 对Oracle服务器有一定的影响吧。
      

  13.   

    报"ORA-12154: TNS: 无法处理服务名",应该先查本机的sqlnet.ora,看看NAMES.DIRECTORY_PATH是否为(TNSNAMES),如果是,再查本机的tnsnames.ora中是否包含了那个服务名。
      

  14.   

    先试试把客户端sqlnet.ora文件的服务器名改为ip地址,如果不行
    把客户端tnsping的结果,还有客户端的sqlnet.ora文件内容贴上来
      

  15.   

    tnsping结果(IP略):
    Attempting to contact (ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=1521))OK(210毫秒)sqlnet.ora
    # SQLNET.ORA Network Configuration File: E:\oracle\ora81\network\admin\sqlnet.ora
    # Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
      

  16.   

    我看了 tnsnames.ora 这个文件,有那个服务名。
    郁闷!!谢谢大家帮我!十分感谢!!!
      

  17.   

    很奇怪的现象,TNSPING能通,说明NET8的底层机制还是好的
    我建议:
    1)试试别的程序来连服务器,比如pl/sql developer, toad什么的,别只用sqlplus
    2)杀杀毒
    3)机器最近是否打过补丁,程序升级什么的。如果有,回滚到原来的状态
      

  18.   

    谢谢在家啦!
    正因为好奇怪,所以才郁闷。
    不过,有可能的话,下次用pl/sql developer, toad试试倒是一种方法。
    可就是不知道为什么?
    只能怀疑是有毒,但会是什么样的病毒呢?百思不得其解----开始怀疑是病毒封了1521端口,但用tnsping有几次成功,而且,用telnet 1521 端口也行。机器没有打补丁。因为是做服务的,装的时候一次搞定,然后不动它,也不上外网,只在内网里服务。而且,机器也不会有人动它。总之,郁闷啦!!
    帮帮我吧!
      

  19.   

    有时候的结果如下(用 tnsping ):
    Attempting to contact (ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx.)(PORT=1521))
    OK(80毫秒)C:\>sqlplus system/manager@server_xxx.xxx.xxx.xxxSQL*Plus: Release 8.1.7.0.0 - Production on 星期五 11月 25 16:33:22 2005(c) Copyright 2000 Oracle Corporation.  All rights reserved.ERROR:
    ORA-12154: TNS: 无法处理服务名用pl/sql developer, toad测试,报超时。
    但用 tnsping 测试,仅(80毫秒)啊!
      

  20.   

    把其他机器上的ADMIN下的ORA文件COPY过来运行一下
    如果这样还不可以的话,大概是你ORACLE客户端/系统/病毒有问题了。
      

  21.   

    网络也许有问题。
    但不是主要问题。
    我说了, PING 都是很正常的,用 tnsping 测试结果如下:
    Attempting to contact (ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx.)(PORT=1521))
    OK(80毫秒)所以说,网络问题应该不是主要的。
    而且,我这也没有屏蔽端口什么的。
      

  22.   

    1、是否装过杀毒、优化大师等软件
    2、检查一下操作系统的Path,看相关Oracle的路径是否还在
    只能帮你这么多了
      

  23.   

    ORA-12154: TNS: 无法处理服务名
    打开Net Configuration Assistant,看看“命名方法配置”,选用“主机名”和“本地”,然后试试
      

  24.   

    回:guangli_zhang(广丽) 
    路径正常。回:Solaris3000(曲曲) 
    这个也试了。不行。回:wffffc(飞) ( ) 
    也试了。若干次,也不行。谢谢各位啊!
    看来要删帖了。唉
      

  25.   

    回:hrui99(助人为本,潜水为行) 
    重新安装客户端不管用.重新安装服务器端可以;回:skying1(1年轻而流浪)
    路由相关及网络问题可以排除.谢谢各位出力!!!!!