你的网络服务名配置正确吗?可以ping通吗?
sqlplus连接字符串用网络服务名.
用户名密码正确吗?

解决方案 »

  1.   

    客户端安装了几个Oracle软件,是不是只有一个?或者用sqlplus登录时连接字符串写得不正确。
      

  2.   


    在你的admin/Tnsnames.ora文件里要做一些修改,例如:
    lala= 
      (DESCRIPTION = 
        (ADDRESS_LIST = 
            (ADDRESS = 
              
              (PROTOCOL = TCP)
              (Host = 10.105.8.11)//1、服务器的IP地址
              (Port = 1521) 
            )
        )
        (CONNECT_DATA = (SID = oracle)//2、Sid号
        )
      )
    关键是要注意1和2两个地方。
    当然,可能你的错误不是这里。
      

  3.   

    Try TNSPING SEVICE_NAME , I guess it will fail and you should confirm the setting in sqlnet
      

  4.   

    你是不是忘了域名,缺省是world,你用sqlplus登陆时写完用户名/口令和别名时,在别名后加上".world"试一下。
      

  5.   

    确认你用net8 测试你创建的服务名测试成功?
    如果成功的话
    登录sql*plus时,把服务名填到"主机字符串"中,不应该有问题
      

  6.   

    你看一下tnsnames.ora文件,看一下,服务名到底是什么有时候会这样,你配置的时候,你输入的服务名测试是通过的,不过有时在用的时候会自动给你加上一个域名的,所以你注意一下,我遇到过这样的问题.
      

  7.   

    我也遇到过!去改一下TNSNAME.ORA文件就行了!如上面BOYPOO(一手拥有)说的那样!
      

  8.   

    从服务器拷ADMIN目录下的东东到本地,OK!
      

  9.   

    oracle安装目录下的\Ora81\network\ADMIN中有一个sqlnet.ora文件,用记事本打开,将下面的行注释掉
    SQLNET.AUTHENTICATION_SERVICES= (NTS)