本帖最后由 lvxiaoqing 于 2012-02-20 14:51:50 编辑

解决方案 »

  1.   

    可能原因很多,你多说些你的情况嘛我问你,用自带的sqlplus 可以连接吗?
      

  2.   


    用sqlplus试过了,可以连接,用plsql developer就不行。用plsql developer连接时database那个下拉框不应该显示已经创建的数据库名吗?可是我这不显示。。
      

  3.   

    去看看%ORACLE_HOME%\NETWORK\ADMIN\tnsnames.ora文件中安装的数据库的SID是不是存在,我怀疑数据库安装失败了。你使用数据库生成向导重新生成下数据库。
      

  4.   


    这个要怎么弄...oracle玩不过来= =
      

  5.   

    配置环境变量:SID = 你的数据库的SID
    具体操作如下:
    c:\> SET PATH=%PATH%;SID=你的数据库的SID
      

  6.   


    SID存在的,怎么看是否已经正确配置了
      

  7.   


    path是指哪个的。。囧了
    弄不明白
      

  8.   

    举个例子吧
    比如本人自己机器的ip是192.168.20.112,本地数据库实例是TEST,实例采用默认端口,那么,我想在plsql developer连接时database那个下拉框显示“test_1”的话,就应该在tnsnames.ora中增加test_1 =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.20.112)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = TEST)
        )
      )这个操作就行。明白了吗
      

  9.   


    可以直接在tnsnames.ora中添加配置么?
      

  10.   


    照你说的试了 可是还是不行= =里面还有其他的东西不用管么
    # tnsnames.ora Network Configuration File: D:\app\lvxiaoqing\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
    # Generated by Oracle configuration tools.LVXIAOQING_1 =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 110.96.163.215)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = lvxiaoqing)
        )
      )ORACLR_CONNECTION_DATA =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
        )
        (CONNECT_DATA =
          (SID = CLRExtProc)
          (PRESENTATION = RO)
        )
      )LISTENER_ORCL =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    LISTENER_LVXIAOQING =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    ORCL =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = orcl)
        )
      )LVXIAOQINGCICI =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = lvxiaoqing)
        )
      )
      

  11.   

    没有启动监听吧...lsnrctl status看看启动了没有
    有两个文件一个是listener.ora 一个是tnsnames.oralistener.ora:SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = 实例名)
          (ORACLE_HOME = 对应的oracle_home路径)
        )
      )LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.52)(PORT = 1521))
        )
      )tnsnames.ora:连接时用的网络名 =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.52)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = 服务名)
        )
      )
    服务名可以show parameter name 查看到需要启动监听程序
    lsnrctl start|stop|status 
      

  12.   


    我的机器也是这个情况,win7的64位系统。难道不支持么,我在Oracle官网上下载的数据库软件
      

  13.   


    我的机器也是这个情况,win7的64位系统。难道不支持么,我在Oracle官网上下载的数据库软件
    win7 64位也是支持的,安装pl/sql的时候,把安装目录后面的那个(x86)去掉,然后安装一个32位的客户端软件,客户端的tnsname.ora配置和数据库的tnsname.ora配置成一样的,直接就可以登录pl/sql了
      

  14.   

    弱弱的问楼主,你是XP还是WIN7的操作系统
      

  15.   

    看到回复你是64bit系统了,我空间有一个关于64bit配置pl/sql deverloper的文章,希望能帮到你
      

  16.   

    pl/sql暂时还没有64位的,需要修改一下。安装instantclient 到oracle/product目录下(这个随便安装好像),配置环境变量:变量名:TNS_ADMIN,变量值:E:\oracle\product\instantclient_10_2;(类似这样)
    pl/sql中 工具->首选项,
    修改oci库(类似这样E:\oracle\product\instantclient_10_2\oci.dll)
    不行的话 参考下面这个网址
    http://www.cnblogs.com/chuyuhuashi/archive/2012/03/22/2411481.html
      

  17.   

    用plsql developer连接时database那个下拉框不应该显示已经创建的数据库名吗?可是我这不显示plsql developer那个下拉框显示的是你已经配置好的TNSNAME
      

  18.   


    我的机器也是这个情况,win7的64位系统。难道不支持么,我在Oracle官网上下载的数据库软件plsql developer 不管安装在多少位的操作系统上,都需要32位的oracle 客户端软件。因为plsql developer需要32位的oci文件。
    安装好后配置一下plsql developer的 oracle_home 以及 oci文件位置就行了。
      

  19.   

    我也碰到这种情况,就是用oracle11g自带的pl/sql是可以连接并且登录的,但是用pl/sql 就是连数据库的实例名也没有,然后还去本地按照的数据库目录(C:\Oracle11g\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN)下看了下文件(listener.ora、tnsnames.ora)发现都是已经配置好了的,后面确定问题是这样的,因为我按照oracle11g在64位的win7系统后,并且安装了client客户端,我找到client的对应目录(C:\Oracle11g\Administrator\product\11.2.0\client_1\network\admin),发现在该目录下没有这两个文件(listener.ora、tnsnames.ora),复制过来放到该目录后,重新启动pl/sql,可以连接!