免安装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. Python开发【第三篇】:Python基本数据类型

    运算符 1.算数运算: 2.比较运算: 3.赋值运算: 4.逻辑运算: 5.成员运算: 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31- ...

  2. Java多线程编程核心技术--Lock的使用(一)

    使用ReentrantLock类 在Java多线程中,可以使用synchronized关键字来实现线程之间的同步互斥,但在JDK1.5中新增加了ReentrantLock类也能达到同样的效果,并且在扩 ...

  3. Thinkphp 模板中直接对数据处理 模板中使用函数 中文字符串截取

    1.Thinkphp 模板中直接对数据处理:{$data.name|substr=0,3} 2.中文字符串截取函数:mb_substr=0,14,'utf-8' 3.中文字符串统计:iconv_str ...

  4. svn更改分支名字,move命令

    名称 svn move — 移动一个文件或目录. 概要 svn move SRC DST 描述 这个命令移动文件或目录到你的工作拷贝或者是版本库. 提示 这个命令同svn copy加一个svn del ...

  5. JMS基本概念和模型

    ------------------------------------------------------------------------------------------- JMS是什么 J ...

  6. ExtJS + fileuploadfield上传文件代码

    后台服务端接收文件的代码: /** * 后台上传文件处理Action */ @RequestMapping(value = "/uploadFile", method=Reques ...

  7. 构建spring+mybatis+redis架构时遇到的小异常

    异常一: Caused by: java.lang.NoSuchMethodError: org.springframework.beans.BeanUtils.instantiateClass(Lj ...

  8. 关于COOKIE学习的一二

    index.php <?php setcookie("name","dalisng",time()+3600); setcookie("addr ...

  9. cf558c(bfs)

    C. Amr and Chemistry time limit per test 1 second memory limit per test 256 megabytes input standard ...

  10. UVA1376.Animal Run (最小割转为最短路 && dijkstra)

    Animal Run Time Limit:6000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit Status ...