方法有4个,这里只介绍一个方法。本机未安装oracle服务器,也未安装oracle客户端。但是安装了pl sql development、toad sql development、sql navigator等管理数据库的工具。在虚拟机或者另一台电脑上安装了oracle服务器,也就是虚拟机或者另一台电脑此时作为服务器。
1、在安装oracle服务器的机器上搜索下列文件:
oci.dll
ocijdbc10.dll
ociw32.dll
orannzsbb10.dll
oraocci10.dll
oraociei10.dll
sqlnet.ora
tnsnames.ora
classes12.jar
ojdbc14.jar
把这些找到的文件复制放到一个文件夹,如 oraclient,将此文件夹复制到客户端机器上。如放置路径为 D:oraclient。
2、配置tnsnames.ora,修改其中的数据库连接串。
客户机为了和服务器连接,必须先和服务器上的监听进程联络。ORACLE通过tnsnames.ora文件中的连接描述符来说明连接信息。一般tnsnames.ora 是建立在客户机上的。如果是客户机/服务器结构,整个网络上只有一台机器安装了ORACLE数据库服务器,那么只需在每个要访问ORACLE服务器的客户机上定义该文件,在服务器上无需定义。但是,如果网络上有多台机器均安装了ORACLE数据库服务器,并且服务器之间有数据共享的要求,那么在每台服务器上都必须定义该文件。tnsnames.ora文件缺省放在/ORACLE_HOME/ product/8.1.7/network/admin目录下。下面是tnsnames.ora的文件样式:
ORA817 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora817.huawei.com)
)
)
INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = ora817.huawei.com)
(PRESENTATION = http://admin)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
字段含义如下:
ADDRESS_LIST 表示该客户机要经由多种协议与一台或多台服务器连接。在该样式文件中就表示该客户机要用TCP/IP协议来和服务器相连。
PROTOCOL 指明要连接使用的协议。
SERVICE_NAME “SERVICE_NAME”就是“Global Database Name”,ORACLE8i数据库使用“Global Database Name”来唯一标识自己,通常的格式为“name.domain”,此处的值为“ora817.huawei.com”。
HOST 是TCP/IP协议使用的服务器IP地址。
PORT 是TCP/IP使用的端口地址。
SID 指定要连接的服务器上ORACLE数据库的ORACLE_SID。
SERVER=DEDICATED 表示用专用服务器连接ORACLE数据库。
下面是一个tnsnames.ora文件内容举例
ora = 连接描述符名:ora(description = 描述
(address = 网络地址之一
(protocol = tcp) 网络协议(tcp表示TCP/IP协议)
(host = 129.9.114.22) 服务器IP地址:129.9.114.22
(port = 1251) 服务器端口号:1251
)
(connect_data = 连接数据
(sid = ora7) 数据库标识名:ora7
)
)
3、添加第一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径(如:D:oraclient,特别是重装后或其它操作,忘了TNS_ADMIN变量,plsql登陆就会报无法解析指定的连接标识符),这是为了能够找到上面说的tnsnames.ora。这步是最重要的。
4 测试
5 oraclient包下载路径
http://download.csdn.net/detail/yangchangji/8009773