以前oracle还是很正常的,但是今天发现oracle服务器出现了问题。问题是现在用PL/SQL连接不上oracle数据库。在刚重启完TNS的服务后,用tnsping 服务名,第一次可以解析oracle别名,第二次是卡死在适配器解析别名处,不动。用SQLPLUS可以正常连接oracle数据库.现在,我己经重装了下网卡驱动,删除监听,重新再新建监听,甚至重装了oracle数据库后,都没有解决这个问题。不知道是什么原因?请各位大侠支下招。谢谢!

解决方案 »

  1.   

    楼主你是说,tnsping不通,但sqlplus能连上数据库?服务在你本机?sqlplus怎么连的,conn user/pass ? 没加服务名吧。
      

  2.   

    直接使用sqlplus可以连接上去吗?
      

  3.   


    Oracle数据库TNS常见错误解决方法
    http://blog.csdn.net/hdhai9451/archive/2009/03/04/3957094.aspx
      

  4.   

    tnsping不通,可能是网络的问题,楼主关了防火墙和杀毒软件试试?
      

  5.   

     windows 防火墙和杀毒软件都关了,但还是不起作用。没有装其他的杀毒软件.同样,第一次可以tnsping 服务名可以拼通,但第二次和以后卡在解析别名上。。重启服务后又是第一次可以拼通,后来再拼就卡在解析别名上了.以前都还是很正常的,只是突然就不行了。
      

  6.   


    数据库在你本机上?
    检查TNS的log,在ORACLE_HOME/network/log/listener.log 
    看看TNS出现的错误信息
      

  7.   


    谢谢,但是我那oracle根本就没有提示错误,就是卡在第二次或以后解析别名上。而且,那里面的关于监听的错误,我都试过了,还是不行。
      

  8.   

    tnsnames.ora中用的IP地址还是主机名?
      

  9.   


    那说明oracle服务本身没问题。
    此时,加上@servername肯定就报错了。
    你把tnsname.ora文件里面的地址和机器名互换一下44看。
    并查看一下本机监听的状态。