十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一、引言

成都创新互联公司,为您提供重庆网站建设、网站制作公司、网站营销推广、网站开发设计,对服务履带搅拌车等多个行业拥有丰富的网站建设及推广经验。成都创新互联公司网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!
Oracle作为一款专业的数据库软件系统可以运行于多层次网络结构,包括单机系统,C/S(客户机/服务器)结构,B/S(浏览器/服务器)结构等。在C/S结构下,要使客户端应用程序能连接Oracle服务器,需要在客户端计算机上安装体积超过120MB的Oracle客户端软件,并进行复杂的配置才能实现。如果应用程序需要部署在多个客户端上,那么安装Oracle客户端和配置连接Oracle服务器的工作将变得非常繁琐。
本文以9i为例介绍一种在不安装Oracle客户端的情况下,应用程序在客户端连接Oracle服务器的方法。
二、具体实现
安装在客户端的应用程序要连接Oracle数据库服务器,需要Oracle数据库的驱动程序,接口文件和各类支持文件。这些文件必须和应用程序存放在相同的目录下,如果单独存放,
可以设置环境变量,使应用程序在相应目录下找到这些文件。
1.应用程序所需文件
在安装了Oracle客户端的计算机上可以找到应用程序连接数据库时所需的所有文件,文件共41个,12.9MB。这些文件必须严格按照以下目录位置进行存放, Appdir是应用程序当前目录。
Appdir目录下共30个文件,这些文件是Oracle服务器所需的动态链接库
oci.dll
 oracle.key
 oraclient9.dll
 oracommon9.dll
 ORACORE9.DLL
 orageneric9.dll
 oraldapclnt9.dll
 oran9.dll
 ORANCDS9.DLL
 orancrypt9.dll
 oranhost9.dll
 oranl9.dll
 oranldap9.dll
 ORANLS9.DLL
 oranms.dll
 oranmsp.dll
 orannzsbb9.dll
 oranoname9.dll
 oranro9.dll
 orantns9.dll
 ORAPLS9.DLL
 ORASLAX9.DLL
 ORASNLS9.DLL
 ORASQL9.DLL
 oratrace9.dll
 ORAUNLS9.DLL
 oravsn9.dll
 orawtc9.dll
 ORAXML9.DLL
 ORAXSD9.DLL
Appdir\bin目录下有一个文件
orantcp9.dll
Appdir\network\ADMIN目录下只有一个文件,该文件是连接数据库的配置文件
tnsnames.ora
Appdir\ocommon\nls\ADMIN\DATA目录下有8个文件,这些文件是简体中文语言环境的支持文件,其它语言运行环境所需文件会有不同
LX00001.NLB
 LX00023.NLB
 LX10001.NLB
 LX10035.NLB
 LX1BOOT.NLB
 LX20001.NLB
 LX20354.NLB
 LX60354.NLB
Appdir\oracore\zoneinfo目录下只有一个文件,用来存储时区信息
timezone.dat
2.修改网络配置文件
在Appdir\network\ADMIN目录下的tnsnames.ora文件是重要的配置文件,在这个文件中存储了连接Oracle数据库服务器的参数——服务命名对应的连接子串。该文件可以用记事本进行编辑,以下是一个tnsnames.ora文件中的配置实例:
- APPDB =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SERVICE_NAME = APPDB)
- )
- )
网络配置文件各参数说明:
 APPDB:本地命名的名称,即Oracle数据库的名字
 PROTOCOL:使用的协议,本例使用TCP
 HOST:服务器的地址
 PORT:服务器的监听端口号,默认使用1521
 SERVICE_NAME: Oracle数据库服务器的名称
3.编辑oracle.key文件
文件oracle.key指明了在注册表中Oracle程序的存储目录,以及ORACLE_HOME和其它的环境变量等信息,该文件内容很少,只记录了简单的目录项,用记事本便可打开对其进行编辑,通常情况下的设置为:
software\appdir
Oracle连接数据库时会到注册表的HKEY_LOCAL_MACHINE\SOFTWARE\APPDIR的对应项中查找数据库的相关信息。
4.注册数据库信息
完成以上工作后,只需在注册表中写入Oracle数据库的语言环境和资源路径,应用程序便可以连接Oracle数据库,无需设置操作系统的环境变量,注册表信息的保存位置应与
oracle.key文件中设定的项值对应,注册表的清单如下:
[HKEY_LOCAL_MACHINE\SOFTWARE\APPDIR]
 "NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
 "ORACLE_HOME"="C:\\Program Files\\appdir"
SIMPLIFIED CHINESE_CHINA.ZHS16GBK表示使用简体中文字符集。应用程序和连接Oracle数据库所需的文件存放在C:\Program Files\appdir目录下,即应用程序的安装目录。
三、总结
为了解决客户端应用程序在不安装Oracle客户端的情况下,方便地连接数据库,Oracle在其***版本的数据库系统中推出了一款免费的工具Instant Client,利用该工具中提供的若干个文件,客户端应用程序既不需要修改注册表,也不需要设置环境变量,便可以连接Oracle数据库服务器,使得应用程序的发行和部署更加简单,不过Instant Client提供的核心文件体积超过了90MB。本文所叙述的方法文件小巧、实现方便,也具有很好的实用价值。