Oracle 11g即时客户端在windows下的配置 by:授客QQ:1033553122 instantclient-basic-nt-11.2.0.3.0.zip客户端压缩包为例 步骤 1. 假设把压缩文件解压,并放入你想要的目录下,如D:\Program Files\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2 2. 设定环境变量,将解压后的程序所在目录(此例中为D:\Program Files\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2)添加到PATH中(注意位于其他Oracle目录之前),增加系统环境变量TNS_ADMIN,系统环境变量ORACLE_HOME,系统环境变量NLS_LANG 此例中值如下: ORACLE_HOME=D:\Program Files\instantclient-basic-nt-1.2.0.3.0\instantclient_11_2 TNS_ADMIN=D:\Program Files\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2 NLS_LANG=SIMPLIFIED CHINESE_CHINA.AL32UTF8 注:语言编码要与Oracle服务器设置的一致,可以通过 select userenv('language') from dual; 查询服务器的语言编码; NLS_LANG也可能为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,AMERICAN_AMERICA.UTF8 过程如下(win7为例): 右键-我的电脑-属性(Properties) -> 高级系统设置(Advanced system settings) -> 高级(Advanced) -> 环境变量(Environment variables) -> 高级(Advanced) -> 环境变量(Environment Variables),打开如下界面 在系统变量(System variables)中,找到Path,编辑(Edit)
注意:不是清除原来的Path的值,而是添加到后面,其他Oracle目录之前。
新建(New)系统环境变量
3. 在解压后程序所在目录下(这里是D:\Program Files\instantclient-basic-nt-1.2.0.3.0\instantclient_11_2)新建一个文件名为tnsnames.ora的文件
#MYDB可以自定义替换 #HOST修改为Oracle Server地址 #SERVICE_NAME修改为Oracle实例名 MYDB= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.8)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = myorcl) ) )
4.测试 打开PL/SQL Developer,在登录窗口中选择取消,然后在菜单工具-首选项中填写如下内容 Oracle主目录名:D:\Program Files\instantclient-basic-nt-1.2.0.3.0\instantclient_11_2 OCI库:D:\Program Files\instantclient-basic-nt-1.2.0.3.0\instantclient_11_2\oci.dll 说明:经个人实践,发现这个有时候并不一定要设置,设置了反而连不上 关闭服务器端防火墙(根据自己需要设置防火墙允许策略),这一步非常重要,测试了很多次最后发现是防火墙的问题。
6、重新开启客户端PL/SQL Developer,然后用户名:hr 密码:oracle 数据库:MYDB,连接为:normal
即可正常连接远程服务器了 也可以用sqlplus测试,sqlplus hr/oracle@MYDB 备注: 在执行查询数据时如有中文字符,可能会出现乱码,解决办法如下: 字符集分为服务器端字符集和客户端字符集。 1、服务器端字符集一般安装Oracle数据库时都会选择中文字符集,如果不是,那只能通过其他方法修改了。 本案例假设服务器端字符集为中文字符集,通过SQL>select userenv('language’) from dual;
结果如下:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
2、客户端字符集 在windows平台下,就是系统的环境变量中设置系统环境变量NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK。
还可以在dos窗口里面自己设置,比如: set NLS_LANG =SIMPLIFIED CHINESE_CHINA.ZHS16GBK 这样就只影响这个窗口里面的环境变量。
作者:授客 |
|