2019独角兽企业重金招聘Python工程师标准>>>
由于Oracle client体积很大。而且安装后,基本上就用2个功能:TNS配置服务名和SQL*Plus。下面是一种小巧、快捷的Oracle客户端配置方法:
1.下载Instant Client
下载地址:
http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html
在这个页面中可以选择适合的操作系统与版本,如:
适用于 Microsoft Windows(32 位)的 Instant Client
适用于 Microsoft Windows(64 位)Itanium 的 Instant Client
适用于 Microsoft Windows (x64) 的 Instant Client
适用于 Linux x86 的 Instant Client
适用于 Linux x86-64 的 Instant Client
Instant client 有2个版本:Basic和Basic Lite。
Basic版本包括了所有的支持运行OCI、OCCI、JDBC、JDBC-OCI的文件,支持多种语言。Basic Lite是Basic版本的精简版,只包括了英文的错误描述,也只支持Unicode、ASCII和欧洲字符集。因此,如果数据库服务器是中文字符集(如 SIMPLIFIED CHINESE_CHINA.ZHS16GBK),则必须下载Basic版本。
这里我下载的是win32系统下使用的Basic版,instantclient-basic-win32-11.2.0.1.0.zip(大约50M)
下载SQL*Plus
为了方便测试可以在Instant Client的下载页面中找到SQL*Plus的下载链接,这个我下载的instantclient-sqlplus-win32-11.2.0.1.0.zip(大约800KB) ,稍后会用到SQL*Plus。
2.解压下载文件
解压下载文件instantclient-basic-win32-11.2.0.1.0.zip至C:\oracle\instantclient_11_2文件夹中。
解压下载文件instantclient-sqlplus-win32-11.2.0.1.0.zip至C:\oracle\instantclient_11_2文件夹中。
3.设置系统环境变量
桌面上右键点“我的电脑”,选择“属性”,选择“高级”页中的“环境变量”,在系统变量中添加下面这个变量:
1) 变量名:ORACLE_HOME
变量值:E:\Develope\OracleClient\instantclient_10_2
2) 变量名:TNS_ADMIN
变量值:E:\Develope\OracleClient\instantclient_10_2
3) 变量名:NLS_LANG
变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
4) 修改Path变量
在后面添加 E:\Develope\OracleClient\instantclient_10_2
4.建立tnsnames.ora文件
C:\oracle\instantclient_11_2新建一个文本文件,文件名为tnsnames.ora,文件中增加自己的数据库别名配置,示例如下:
MyDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.16)(PORT = 1521))
)
(CONNECT_DATA =
(SID = testDB)
)
)
改第一行中的MyDB为自己想使用的别名,Host为IP地址,SID为数据库服务器的实例名。
5.测试
使用sqlplus测试
在Dos命令行,运行 sqlplus username/password@MyDB
Username为数据库用户名
password为数据库密码
MyDB为tnsnames.ora文件中配置的别名
如果配置正确,会出现如下信息和SQL> 命令提示符
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>
6.错误处理
Ø ORA-12705
登录提示如果出现Oracle Instant Client ORA-12705: Cannot access NLS data files or invalid environment specified
Windows
首先查找注册表里 \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 查找键 NLS_LANG,这个键由Oracle标准客户端安装时创建,值是NA会导致了 ORA-12705错误。解决方法就是修改NA为SIMPLIFIED CHINESE_CHINA.ZHS16GBK。当然也可以在环境变量中增加NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK。
Linux
如果环境变量 NLS_LANG 值是NA 会引起 ORA-12705 错误,解决方法是修改set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK