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