转:

PLSQL连接本地oracle或远程oracle数据库,实现随意切换

置顶 2018年01月12日 19:36:45 前方一片光明 阅读数 43542
 
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_26230421/article/details/79047527

前言

每次安装Oracle以后,都会出现使用plsql连接不上的问题!多次重启电脑、重装系统的磨人经历之后,终于做出这么一篇文章,希望能帮助广大技术人员减少一些时间,顺利进行连接。

注:不安装oracle,可以用plsql连接远程数据库(只要有oracle的network文件夹就行)。

本文主要讲述如何连接本地oracle数据库或者远程oracle数据库,实现随意切换。

注:首先下载64oracle以及32位轻量级客户端(注意版本的对应,我用的是11g的oracle和11.2的客户端):

点击进入oracle下载页面       点击进入客户端下载页面

以下步骤请自行更改路径,不然,出错了别怪我哦:

step1 复制network文件

安装步骤网上可以搜到!

oracle安装到某路径下,

客户端随便解压到一个路径,我的是放在D:\app\shuhao\instantclient_11_2了。

然后把oracle中的D:\app\shuhao\product\11.2.0\dbhome_1里面的整个network文件夹复制,

粘贴到客户端文件夹D:\app\shuhao\instantclient_11_2下面,如下图所示:

=================================分割线==================================

step2 修改配置文件

2.1  修改oracle数据库文件

D:\app\shuhao\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora文件内容,添加一个SID_DESC:

  1. # listener.ora Network Configuration File: D:\app\shuhao\product\11.2.0\dbhome_1\network\admin\listener.ora
  2. # Generated by Oracle configuration tools.
  3.  
  4. SID_LIST_LISTENER =
  5. (SID_LIST =
  6. (SID_DESC =
  7. (SID_NAME = CLRExtProc)
  8. (ORACLE_HOME = D:\app\shuhao\product\11.2.0\dbhome_1)
  9. (PROGRAM = extproc)
  10. (ENVS = "EXTPROC_DLLS=ONLY:D:\app\shuhao\product\11.2.0\dbhome_1\bin\oraclr11.dll")
  11. )
  12. #下面的SID_DESC是新增加的内容,注意修改ORACLE_HOME路径
  13. (SID_DESC =
  14. (SID_NAME = orcl)
  15. (ORACLE_HOME = D:\app\shuhao\product\11.2.0\dbhome_1)
  16. (GLOBAL_DBNAME = orcl)
  17. )
  18. )
  19.  
  20. LISTENER =
  21. (DESCRIPTION_LIST =
  22. (DESCRIPTION =
  23. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  24. )
  25. )
  26.  
  27. ADR_BASE_LISTENER = D:\app\shuhao

=================================分割线==================================

2.2  修改oracle数据库文件

D:\app\shuhao\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora文件内容,源文件没有做改动:

  1. # tnsnames.ora Network Configuration File: D:\app\shuhao\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
  2. # Generated by Oracle configuration tools.
  3.  
  4. ORACLR_CONNECTION_DATA =
  5. (DESCRIPTION =
  6. (ADDRESS_LIST =
  7. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  8. )
  9. (CONNECT_DATA =
  10. (SERVICE_NAME = orcl)
  11. )
  12. )
  13.  
  14. LISTENER_ORCL =
  15. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  16.  
  17. ORCL =
  18. (DESCRIPTION =
  19. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  20. (CONNECT_DATA =
  21. (SERVER = DEDICATED)
  22. (SERVICE_NAME = orcl)
  23. )
  24. )

=================================分割线==================================

2.3  修改客户端文件

D:\app\shuhao\instantclient_11_2\network\admin\tnsnames.ora文件内容:

  1. # tnsnames.ora Network Configuration File: D:\app\shuhao\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
  2. # Generated by Oracle configuration tools.
  3.  
  4. ORACLR_CONNECTION_DATA =
  5. (DESCRIPTION =
  6. (ADDRESS_LIST =
  7. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  8. )
  9. (CONNECT_DATA =
  10. (SERVICE_NAME = orcl)
  11. )
  12. )
  13.  
  14. LISTENER_ORCL =
  15. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  16.  
  17. ORCL =
  18. (DESCRIPTION =
  19. (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  20. (CONNECT_DATA =
  21. (SERVER = DEDICATED)
  22. (SERVICE_NAME = orcl)
  23. )
  24. )
  25. #新增 @ 标识符,用于区分本地与远程oracle
  26. ORCL@192.168.0.164 =
  27. (DESCRIPTION =
  28. (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.164)(PORT = 1521))
  29. (CONNECT_DATA =
  30. (SERVER = DEDICATED)
  31. (SERVICE_NAME = orcl)
  32. )
  33. )

step3 配置OCI

不登录plsql,直接按Cancel,进入后在Tools--->Preferences---->Connection中配置OCI为32位客户端的OCI

D:\app\shuhao\instantclient_11_2\oci.dll

step4 环境变量配置

添加前2个系统变量:

1. 变量名:TNS_ADMIN

变量值:D:\app\shuhao\instantclient_11_2\network\admin

2. 变量名:NLS_LANG

变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

3. Path中配置加入:

D:\app\shuhao\product\11.2.0\dbhome_1\BIN;D:\app\shuhao\instantclient_11_2;

step5 重启电脑(有时候不需要重启)

启动oracle服务与监听,这个就不需要描述了。

step6:登录plsql!!!

当看到Database下拉框中有本地的ORCL以及远程的ORCL@192.168.0.164就算成功了!!!

OK, GAME OVER !

PLSQL连接本地oracle或远程oracle数据库,实现随意切换的更多相关文章

  1. plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法(转)

    原文转自:plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法 最近在使用plsql连接本地oracle数据库的时候,在同一网络环境中,出现了可以连接本地oracle, ...

  2. plsql 连接 虚拟机Linux下的Oracle数据库 失败

    plsql 连接 虚拟机Linux下的Oracle数据库 失败2017年09月09日 09:10:23 守望dfdfdf 阅读数:187 标签: oraclelinux 更多个人分类: 工具 软件编辑 ...

  3. oracle系列--第五篇 PLSQL连接本地的Oracle数据库

    这篇blog主要是针对新手,我也是个新手:) 我们把oracle成功的安装在了我们的计算机上面,那我们如何才能将PLSQL developer连 接到本地的oracle呢? 首先,我们必须有下面步准备 ...

  4. 本地导入/导出远程oracle数据库

    1.导出数据库 exp 用户名/密码@远程服务器IP:数据端口号/实例名 file=存储dmp文件的路径 full=y; 2.导入数据库 imp 用户名/密码@远程服务器IP:数据库端口号/实例名 f ...

  5. 通过exp命令对Oracle数据库进行备份操作(提供两种情况的备份:备份本地,备份远程的数据库)

    exp 用户名/密码@数据库所在ip地址:数据库端口号/数据库的service-name file=存储到的位置 这个是能成功的 http://www.2cto.com/database/201402 ...

  6. PLSQL 连接不上64位ORACLE数据库解决办法

    http://it.oyksoft.com/post/6003/ huan jing bian liang TNS_ADMIN  D:\OracleClient D:\OracleClient\TNS ...

  7. plsql连接本地数据库

    1.  下载64位Oracle,解压两文件,解压完成后将文件合并,安装: 2.  下载PL/SQL,安装: 3.  下载instantclient-basic-win32-11.2.0.1.0.zip ...

  8. 用bat文件将本地sql在远程oracle上执行

    最近在在搭建一个数据库的测试环境,需要初始化一些数据库脚本.因为内容比较多,分为很多个sql文件.现准备写一个bat文件,经过百度一番,终于搞定.如下: 1. 新建一个文件夹,将初始化的脚本文件全部放 ...

  9. 【Oracle错误集锦】:PLSQL无法直连64位Oracle11g数据库

    背景:Oracle数据库装在本机上,使用PLSQL连接. 今天安装完Oracle 11g数据库后.用plsql连接数据库死活都连接不上.而且plsql客户端登录窗体的Database下拉框还为空.见下 ...

随机推荐

  1. 使用EasyUI查询与删除

    下面我们创建一个使用EasyUI布局的asp.net网站查询与删除数据(连接数据库) 新建网站-新建数据库(一个表,主要作用是了解一下easyUI的使用) 打开EasyUI帮助文档,自行渲染 使用da ...

  2. u-boot从nand 启动时的问题解决记录

    u-boot从nand 启动时的问题解决记录 问题描述: 使用u-boot-1.1.6版本u-boot移植到JZ2440开发板上,当前已经能够从Nor启动,但是不能从Nand正常启动(u-boot大小 ...

  3. okhttp连接池:put,get方法&connection回收

    OkHttp连接池put和get方法: 在上一次[https://www.cnblogs.com/webor2006/p/9281429.html]咱们分析了连接拦截器,如下: 不管是Http1.0还 ...

  4. 记录一下UILabel加载富文本 iOS

    一般情况下我们都习惯用webview加载富文本.但是webview比较消耗内存.然后发现其实本身可以用uilabel加载,性能还不错就记录下~~ 核心方法下面两个 -(NSMutableAttribu ...

  5. 配置Anaconda环境

    1. 帮助信息 命令行下执行"conda -h"或“conda --help”可以获得帮助信息: 命令行下执行"conda <argument> -h&quo ...

  6. python 中的匿名函数lamda和functools模块

    为什么 要把匿名函数和functools模块写在一起? 因为 lamda函数和functools模块都是对函数一种增强或者是简化. 匿名函数: 为了解决那些功能很简单的需求而设计一次性的需求函数 #& ...

  7. UVALive 6862——结论题&&水题

    题目 链接 题意:求满足$0 \leq x \leq y \leq z \leq m$且$x^j + y^j = z^j, \ j=2 \cdots n$的三元组的对数 分析 由费马大定理:整数$n ...

  8. 4、docker镜像:花卷结构、commit镜像

    1.是什么 docker images 镜像是一种轻量级.可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码.运行时.库.环境变量和配置文件. ...

  9. HDU 6060 - RXD and dividing | 2017 Multi-University Training Contest 3

    /* HDU 6060 - RXD and dividing [ 分析,图论 ] | 2017 Multi-University Training Contest 3 题意: 给一个 n 个节点的树, ...

  10. JavaScript属性名和属性值

    ㈠属性名 var obj = new Object(); 向对象中添加属性 ⑴属性名:           - 对象的属性名不强制要求遵守标识符的规范                 什么乱七八糟的名 ...