免安装Oracle客户端使用PL/SQL

Oracle客户端挺招人烦的,部署连接它的应用通常需要先安装它的客户端,安装程序要求在目标机器上写注册表,假设你没有洁癖的话,你仍可能被下面的事情绊住:当你的机器上的其他程序依赖于x64的Oracle的程序,并且它们很有可能根本不是你写的,因此你还不敢随便乱动服务器,但是你可能需要一个PL/SQL用来在相同的环境下执行查询,这个时候你还是需要一个免安装的办法来处理这个问题。

1、下载Oracle Instant Client (32-bit)

因为我的PL/SQL只支持32位的Oracle,所以必须下载对应的32位的才可以。

只需要下载instantclient-basic-nt-11.2.0.3.0.zip就可以了,其它的都是一些根据不同需要扩展的包。

下载地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html

2、解压到目标机器上(假设是台全新安装的Windows就可以)

在这里我选择了该文件夹:C:\instantclient_11_2_x86\

3、配置tnsnames.ora

用记事本新建tnsnames.ora文件保存在该路径下:

C:\instantclient_11_2_x86\NETWORK\ADMIN\tnsnames.ora

内容参考下面的进行配置:

MY_XXXServer =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.199.200.102)(PORT = 1521))
    (CONNECT_DATA =
      (SID = oravm)
      (SERVER = DEDICATED)
    )
  )

4、解压PL/SQL到目标机器上,如:C:\Program Files (x86)\PLSQL Developer 9.0.0.1601\

5、打开PL/SQL,登录的时候,“取消”即可。

进入“首选项”(工具-〉首选项),左侧选择Oracle,右侧填写“Oracle主目录名”以及OCI库地址即可:

6、完成以上步骤,重新打开PLSQL,输入用户名密码,选择正确的数据库即可。

7、中文乱码问题

7.1 方法1:设置环境变量(全局,可能对其它Oracle客户端产生影响)

“计算机”->“系统属性”->“高级系统设置”->“系统属性/高级 选项卡”->“环境变量”->“系统变量”->“新建”->
变量名:NLS_LANG
变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

7.2 方法2:设置注册表(不适用于Instant Client或其他XCopy客户端)(全局,可能对其它Oracle客户端产生影响)

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE]
"NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

其中KEY_XE可能和不同的Oracle安装包不同,根据自己情况进行调整。

7.3 方法3:在启动PLSQL前设置(独立,不会对其它Oracle客户端产生影响)

7.3.1 在PLSQL安装文件夹下,新建bat文件,内容如下:

set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
plsqldev.exe

其中plsqldev.exe为PLSQL运行文件。执行该bat后,会自动打开plsql developer,输入用户名密码,中文乱码问题通常就得到解决。但是直接执行这个bat文件会导致会有个黑色的命令行窗口,写一个vbscript文件plsqldev.vbs在安装目录下,内容如下:

createobject("wscript.shell").run "SetChineseCharset.bat",0

以后运行plsqldev.vbs即可(可以右键发送快捷方式到桌面,并且修改图标为http://files.cnblogs.com/volnet/plsqldev.ico

7.3.2 为了消除黑色的命令行窗口,也可以直接写下面这样的bat文件:

set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
start plsqldev.exe

这样就不会出现黑色的命令行窗口了。同样修改图标的方法同上。

关于自己写的应用程序如何使用免安装的方式部署,我也在研究中,这个链接值得参考:http://www.oracle.com/technetwork/issue-archive/2008/08-nov/o68odpnet-101744.html

关于最后研究的结果,请参考:http://www.cnblogs.com/volnet/archive/2012/05/22/2513968.html,其中也对PL/SQL Developer的安装做了更新。

本文转自http://www.cnblogs.com/volnet/archive/2012/05/22/2513728.html

《oracle每日一练》免安装Oracle客户端使用PL/SQL的更多相关文章

  1. 在代码生成工具Database2Sharp中使用ODP.NET(Oracle.ManagedDataAccess.dll)访问Oracle数据库,实现免安装Oracle客户端,兼容32位64位Oracle驱动

    由于我们开发的辅助工具Database2Sharp需要支持多种数据库,虽然我们一般使用SQLServer来开发应用较多,但是Oracle等其他数据库也是常用的数据库之一,因此也是支持使用Oracle等 ...

  2. 【转】亲测plsql Developer配置免安装oralce客户端步骤

    原文地址:http://blog.csdn.net/bushy0401/article/details/11869461 再次用到Oracle了,机器上面也没有oracle客户端,还得去网上下载,直接 ...

  3. Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)

    本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...

  4. 在 Oracle Linux 6.5 上安装 Oracle 11g 单实例数据库

    Checking the Hardware Requirements 系统必须满足下面最小的硬件要求 Memory Requirements Minimum: 1 GB of RAMRecommend ...

  5. 查询oracle数据库,返回的数据是乱码。 PL/SQL正常。

    查询oracle数据库,返回的数据是乱码. PL/SQL正常. 解决方案如下:

  6. 免安装Oracle客户端使用PLSQL Developer 7/8 连接Oracle10/11g

    众所周知,Oralce的客户端几百兆太大,网上也有许多DIR的处理.这里的处理使用官方提供ORALCE工具包Instant Client Package! 下载地址:http://www.oracle ...

  7. C# 连接Oracle数据库,免安装oracle客户端

    一.方案1 首先下面的内容,有待我的进一步测试和证实.18.12.20 被证实了,还需要安装Oracle客户端,或者本机上安装oracle数据库软件. 18.12.20 1.下载Oracle.Mana ...

  8. Oracle instant client免安装Oracle客户端配置

    不想安装几个G的完整版client,可以直接通过安装包安装的时候选择instant client,如果没有安装包,也可以直接去官网下载一个即时客户端,64位的windows包大小只有78MB左右 传送 ...

  9. 免安装Oracle客户端使用PL/SQL连接Oracle

    只需要在Oracle下载一个叫Instant Client Package的软件就可以了,这个软件不需要安装,只要解压就可以用了,很方便,就算重装了系统还是可以用的. 下载地址:http://www. ...

随机推荐

  1. 用淘宝ip地址库查ip

    这是一个通过调用淘宝ip地址库实现ip地址查询的功能类 using System; using System.Collections.Generic; using System.Linq; using ...

  2. android 点击屏幕关闭 软键盘

    //点击屏幕 关闭输入弹出框 @Override public boolean onTouchEvent(MotionEvent event) { InputMethodManager im = (I ...

  3. CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL)

    CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL) 一.准备篇: /etc/init.d/iptables stop #关闭防火墙 关闭SELINUX vi /etc/sel ...

  4. HttpHandler过滤请求..

    记得以前写过一篇..后来找不到了..我自己也忘记怎么弄了.. 在网上找了很多的教程..写的总有瑕疵..感觉不顺畅.. 自己来一篇.. 其实很简单.. 先建立一个类  继承并实现接口 IHttpHand ...

  5. 抓取网站数据不再是难事了,Fizzler(So Easy)全能搞定

    首先从标题说起,为啥说抓取网站数据不再难(其实抓取网站数据有一定难度),SO EASY!!!使用Fizzler全搞定,我相信大多数人或公司应该都有抓取别人网站数据的经历,比如说我们博客园每次发表完文章 ...

  6. oarcle数据库导入导出,创建表空间

    oracle导入导出(前提,本机已经安装oracle和oracle客户端)导出命令: exp username/password@192.168.1.138/ORCL file=c:\test.dmp ...

  7. servlet request getHeader(“x-forwarded-for”) 获取真实IP

    request方法客户端IP: request.getRemoteAddr() 输出:192.168.0.106 客户端主机名:request.getRemoteHost()输出:abc reques ...

  8. Nosql 之 Redis(可做缓存 )

    下载 可以下载解压安装的 地址:https://github.com/dmajkic/redis/downloads 修改 redis.conf 取消注释 requirepass foobared运行 ...

  9. display : -webkit-box-inline 我见

    发现: 最近在做移动端的东西,说起移动端弹性盒子布局真是无往不利,用起来特别爽,我也是偶尔间发现的这个属性并且它的用法,在网上基本查不到这个属性的资料(个人看法).如果没有听说过(display:bo ...

  10. JavaScript 学习笔记 -- String.trim + format

    最近仍在IE6徘徊,低版本的浏览器没有实现JavaScript 的trim() 和 format(). . 主要是这两个使用的比较多,先整理出来: 1.trim() -- 去除字符串中开始和结尾部分, ...