1.Linux RHEL 6.X X86_64操作系統
2.能從安裝Oracle服務器的服務器上獲取Oracle相關的文件(相同OS)
從Oracle的網址下載下面的軟件包:
1) instantclient-basic-linux.x64-11.2.0.4.0.zip (59.282MB)
2)instantclient-sqlplus-linux.x64-11.2.0.4.0.zip(815KB)
3)instantclient-sdk-linux.x64-11.2.0.4.0.zip(629KB)
4)instantclient-jdbc-linux.x64-11.2.0.4.0.zip(1.572MB)
Oracle軟件包的下載網址如下:
http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
配置過程關鍵是環境變量的配置,請根據自己實際情況進行配置。
1.使用root用戶登錄,創建目錄:mkdir -p /opt/oracle
2.將所有的軟件包解壓到/opt/oracle目錄下:
# unzp instantclient-basic-linux.x64-11.2.0.4.0.zip-d /opt/oracle
注:所有文件將自動解壓到/opt/oracle/instantclient_11_2目錄下。
3.創建配置文件a
#vi /opt/oracle/instantclie_11_2/tnsnames.ora CZJGBS = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 81.17.1.23)(PORT = 1521)) //需要連接的IP (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = czjgbs) //需要連接的實例 ) ) EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) ) (CONNECT_DATA = (SID = PLSExtProc) (PRESENTATION = RO) ) )
在需要使用Oracle功能的測試用戶環境變量中添加如下配置:
# vi ~/.bashrc export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK export ORACLE_HOME=/opt/oracle/instantclient_11_2 export TNS_ADMIN=$ORACLE_HOME export PATH=$PATH:$HOME/bin:$ORACLE_HOME export LD_LIBRARY_PATH=$ORACLE_HOME:/usr/lib export ORACLE_SID=czjgbs // (需要連接的實例名稱)
注:TNS_ADMIN環境變量用於指定tnsnames.ora文件所在路徑。
#source ~/.bashrc
測試sqlplus命令:
$ sqlplus scott/tiger@ora215 SQL*Plus: Release 10.2.0.4.0 - Productionon 星期五 8月 3 10:41:44 2012 Copyright (c) 1982, 2007, Oracle. All Rights Reserved. Oracle Database 10g Enterprise EditionRelease 10.2.0.4.0 - 64bit Production With the Partitioning, Real ApplicationClusters, OLAP, Data Mining and Real Application Testing options SQL>
回到root用戶,在其它Oracle機器上獲取必要的文件。
# cd /opt/oracle/instantclient_11_2/
# scp [email protected]:/oracle/orahome/product/11.2.0/bin/tnsping./
上面的命令是從其他安裝Oracle服務器的服務器上拷貝文件過來。
# mkdir -p network/mesg
# cd network/mesg
# scp [email protected]:/oracle/orahome/product/11.2.0/network/mesg/tnsus.msb./
測試tnsping工具:
$tnsping ora16
Oracle的InstantClient自帶沒有sqlldr鞏固,也需要從Oracle服務器上獲取相關文件。
使用root用戶登錄:
# cd /opt/oracle/instantclient_11_2/ # [email protected]:/oracle/orahome/product/11.2.0/bin/sqlldr ./ # mkdir -p rdbms/mesg/ # cd rdbms/mesg/ # scp [email protected]:/oracle/orahome/product/11.2.0/rdbms/mesg/ulus.msb./
測試用戶中運行sqlldr:
$sqlldr
使用root用戶登錄,從Oracle服務器上拷貝相關的文件過來。
# cd /opt/oracle/instantclient_11_2/ # scp 192.168.21.16:/oracle/orahome/product/11.2.0/bin/imp./ # scp192.168.21.16:/oracle/orahome/product/11.2.0/bin/exp ./ # cd rdbms/mesg/ # scp192.168.21.16:/oracle/orahome/product/11.2.0/rdbms/mesg/impus.msb ./ # scp 192.168.21.16:/oracle/orahome/product/10.2.0/rdbms/mesg/expus.msb./
在Linux系統中安裝Oracle客戶端InstantClient,但是它缺少SQL*Loader、EXP等工具,本文描述如何安裝這些命令工具。
直接從相同版本的數據庫服務器的安裝路徑中拷貝sqlldr可執行文件過來,執行sqlldr會報如下錯誤:
Message 2100 notfound; No message file for product=RDBMS, facility=ULMessage 2100 not found; Nomessage file for product=RDBMS, facility=UL[etl@m1 instantclient_10_2]$^C
實際上,Instant Client安裝sqlldr也只能使用拷貝文件的方式。報上面的錯誤是因為你還需要拷貝下面這些信息文件過來。
首先,從Oracle數據庫服務器上找到$ORACLE_HOME/network/mesg下的tnsus.msb文件,以及$ORACLE_HOME/rdbms/mesg下的ulus.msb文件。
然後,把它們拷貝到InstantClient的安裝目錄中的相應目錄下。例如:/usr/ocal/instantclient_10_2/[rdbms/mesg和network/mesg]。
現在你可以使用SQL*Loader工具了。
如何配置EXP和imp工具,如果只是拷貝可執行文件到對應的目錄下,會報如下的錯誤:
Message 2100 notfound; No message file for product=RDBMS, facility=ULMessage 2100 not found; Nomessage file for product=RDBMS, facility=UL[etl@m1 instantclient_10_2]
此時,你需要從Oracle數據庫服務器的安裝目錄中找到rdbms/mesg下的expus.msb和impus.msb,然後拷貝到對應的目錄中文件即可解決。