我在cmd下连接数据库conn sys/orc01@ORC01 as sysdba提示可以连接。而我使用界面方式sqlplusw然后输入相应的信息,却看到如下提示:ORA-12514:TNS:listener dose not currently know of service requested in connect description.昨天我的确是两种方式都提示这个错误,查了资料,发现是在listener.ora中少了如下描述:
...
  (SID_DESC =
       (SID_NAME = ORC01)
       (ORACLE_HOME = F:\Database\Db_1)
       (PROGRAM = ORC01)
     )
....
然后修改后,使用第一种方式就可以连上了,而使用界面怎么就不行了呢??
另外为什么我新装的Oracle10G,会少了上面的描述信息。请教老鸟指点指点。

解决方案 »

  1.   

    界面方式sqlplusw中
    用户名:sys/orc01@ORC01 as sysdba
    其他空,试下。
      

  2.   

    你说的这个只有晚上回家试了,界面方式我是这样填的:
    用户:sys
    密码:orc01
    主机:TIKY(我的机子名)但为什么我这样的不行?,说到这里,我突然有个疑问,我这样填写确实没指定数据库,那么我会连到哪个数据库,因为我是做SQLSERVER的,用户一般默认是MASTER系统数据库,ORACLE有系统数据库么?不知道明白我意思没有,希望老鸟给我讲解一下。
      

  3.   

    主机:TIKY(我的机子名)→ORC01
      

  4.   

    如果是在oracle服务器上,应该是listener服务没起来。
      

  5.   

    ORA-12514:TNS:listener dose not currently know of service requested in connect description
    这个是因为你输入的连接字符串中的网络服务名与你本地的TNSNAMES.ORA中的网络服务名不相同所致.
    针对你输入的连接字符串,ORACLE 会在TNSNAMES.ORA文件中找名为TIKY的网络服务名,而事实上在TNSNAMES.ORA文件中,又没有TIKY这个名字,所以,你连接不上.
      

  6.   

    这个。人家明明写的是“主机字符串”实际上就是连接数据库的字符串。
    也就是TNSNAMES.ORA文件定义的名称。
      

  7.   

    楼上的,为了彻底弄清楚,能否详细说说,TNSNAMES.ORA哪部分内容是我需要
    在HOST那个地方填写的,也就是你们说的"网络服务名"2 那是不是,我修改那个地方的为任意名字,然后重启服务,HOST那个地方填我修改后的名字,也可以
    进去?知道的朋友,也请帮助我,非常感谢
      

  8.   

    用户名:sys
    密码:oracle
    主机字符串:orcl as sysdba  (orcl是你的oracle sid)
      

  9.   

    历史原因,oracle也不愿意改。因为老用户都知道这么用。