用Oracle10g带的instant client连接Oracle,无需安装oracle客户端

leon2k 2006-01-18 09:53:31
我一直希望客户端不安装oracle客户端,无论我使用java、delphi、c++,当知道oracle10g出了instant client轻量级客户端后,我就开始查找相关资料,终于可以了,将方法贡献出来,希望能帮助大家。

经测试,用oracle10g代的instant client连接oracle9.2,没有什么问题,根据instant client产品经理的说法,应该连接8i也没有什么问题。


Oracle 10G 中Instant Client 的使用
==============================================================

从10G开始,Oracle 提供了一个较为轻量级的客户包,叫做
Instant Client. 将它安装好后,就不用再安装庞大的
Oracle Client了. 这对于应用程序的分发是一个改进.
(用winrar3.3压缩后大概27M)

步骤:
1. 从OTN 下载几个压缩包,解压到一个目录, c:\instant client

instantclient-basic-win32-10.1.0.2.zip : 这是最核心的包
instantclient-jdbc-win32-10.1.0.2.zip: 包含JDBC Driver的包
instantclient-sqlplus-win32-10.1.0.2.zip: 最简单的SQLPLUS包

2. 配置环境变量和tnsnames.ora/sqlnet.ora文件

首先, PATH变量中加入 c:\instant client

如果你的机器从来没有安装过ORACLE的软件,注册表中
应该没有下面这个键:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE

因此,我们可以写一个批处理的文件,手工的添加
环境变量, 例如:
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
>>>> 此处设置这个根本没有用,可以在系统环境变量
中增加一个NLS_LANG,也可以在注册表中增加一个:
[HKEY_LOCAL_MACHINE\SOFTWARE\Oracle]
"NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK",
这样中文问题就可以解决了,前提是你在客户端的字符
集设置需要保持和服务器端的一致。

最后,再配置tnsnames.ora和sqlnet.ora. 如果本机找
不到示例文件,就从server上拷贝一个.

3. 如果开发JAVA应用程序,还要配置一些环境变量,
例如CLASSPATH,JAVA_HOME等等. CLASSES12.jar 文件是
必须的,其他的根据需要添加.

4. 如果启动SQLPLUS时出现下面的错误:
ORA-12545: Connect failed because target host or object does not exist
试着把tnsnames.ora 中的host 改成IP地址.

...全文
4791 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
建哥聊IT 2006-04-28
  • 打赏
  • 举报
回复
收藏!
leon2k 2006-02-06
  • 打赏
  • 举报
回复
我之所以这样做,主要是方便自己的程序控制安装和配置过程,
年前我将Oracle9.2中的OLE DB和ODBC驱动提取了出来,配合instant client使用,可以真正免除安装oracle客户端驱动的痛苦,当然,使用microsoft的oledb驱动也可以,不过他的ole驱动有一些问题,可能会带来麻烦。
xxiao07 2006-01-21
  • 打赏
  • 举报
回复
好,我去试!
Goshawkx 2006-01-19
  • 打赏
  • 举报
回复
访问 www.irisbay.com
可以下载 oracle 10g instant client的安装版
自动配置好了NLS_LANG等 TNS_ADMIN, 还能很方便的修改tnsnames.ora
支持pl/sql developer
leon2k 2006-01-19
  • 打赏
  • 举报
回复
怎么没有人进来,我好给分啊!
computerdragon 2006-01-19
  • 打赏
  • 举报
回复
好,我先试试。
leon2k 2006-01-18
  • 打赏
  • 举报
回复
谁顶下,我给谁分啊!
leon2k 2006-01-18
  • 打赏
  • 举报
回复
不过,我发现,PL SQL Developer不能正常运行,它可能需要安装oracle客户端,因为它是通过注册表查找oci、oracle主目录的,或者可以模拟安装oracle客户端后的注册表信息,我没有再试验,不过我想可能是可以的。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧