美文网首页
PLSQL连接oracle

PLSQL连接oracle

作者: 薛西亚斯 | 来源:发表于2019-08-06 20:28 被阅读0次

    连接远程数据库

    项目中需要使用PLSQL,组内大佬给了一个oracle的微端安装程序,于是一点都不知晓的我入了一个大坑。

    oracle和PLSQL的安装应该都没有什么问题,连接远程数据库时还需要安装一个叫instantclient_11的程序,我没有下载,直到后来我才发现原来oracle的微端应该就是这个程序(名字9成相似啊喂)

    微端安装目录

    参照网上的操作,复制network文件到客户端目录下,network文件在oracle的安装目录内,我的文件目录如下:
    C:\app\86156\product\11.2.0\dbhome_1\NETWORK\ADMIN
    然后配置环境变量什么的,但是按照网上参照的设置环境变量后,oracle自带的SQL操作端就无法登陆了

    oracle自带SQL操作端 微端提供的SQL操作端

    总之我尝试过很多配置,微端的SQL我始终连接不上数据库(原谅我太菜),环境变量只能沿用原来的配置,全部设置为oracle端的,仅有一个环境变量为微端,即:
    C:\Ora10InstantClient
    然后是数据库的配置,一般来说,oracle的配置目录如下:


    配置目录

    sample目录下有tnsnames和listener的原生文件,默认admin下无这两个文件,需要使用时从sample拷贝到admin下才会生效,然后根据需要配置

    由于安装了微端,我发现在admin下的tnsnames并不生效,生效的是Ora10InstantClient目录下的tnsnames

    tnsnames目录

    配置如下

    ORCL =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = orcl)
        )
      )
    

    该ORCL即会在PLSQL登陆时可选


    PLSQL登陆

    至此连接到远程数据配置完毕

    连接本地oracle数据库

    连接本地数据库除了要配置连接项,还需要配置聆听文件,我尝试配置了Ora10InstantClient目录下的listener文件,没有生效,后来又配置了oracle安装目录admin下的listener文件

    oracle目录下的listener文件

    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\app\86156\product\11.2.0\dbhome_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\app\86156\product\11.2.0\dbhome_1\bin\oraclr11.dll")
        )
      )
    
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-R1U9SUG)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1522))
        )
    
      )
    

    微端下的listener文件

    LISTENER =
      (DESCRIPTION_LIST =
       (DESCRIPTION =
        (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.3.15)(PORT=1521))
        (ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))   
        )
      (DESCRIPTION =
        (ADDRESS=(PROTOCOL=tcp)(HOST=LOCALHOST)(PORT=1521))
        (ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))  
        )
       )
    
    ADR_BASE_LISTENER = C:\app\86156
    

    具体生效的是哪个我暂时没有测试,我猜测生效的应该是admin下的,DESKTOP-R1U9SUG是主机名,listener是自动生成的

    每次改动需要重启listener服务


    服务

    登陆失败时不妨多试几次

    相关文章

      网友评论

          本文标题:PLSQL连接oracle

          本文链接:https://www.haomeiwen.com/subject/jpqgdctx.html