From: http://meviso.javaeye.com/blog/726448
javama:總結
首先說明:百度上面搜尋的資料,都是垃圾資料,而且例子都是相互複製,確沒有何參考價值,
最可煩的是需要安裝oracle 遠程用戶端,他們那些笨蛋都是以本地為主,一般情況下本地如果有
安裝oracle, 也會安裝好用戶端,不需要那如群笨蛋發布那些無用的資訊,浪費人家的時間。
1.要遠程使用oracle,先下載下面三個檔案,注意版本最好一致。
oracle-instantclient-basic-10.2.0.4-1.i386.zip
oracle-instantclient-devel-10.2.0.4-1.i386.zip //這個是sdk 的,檔案名稱上沒有說明,特此說明
oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
//查看oracle的sql語句,當然你如果無法上去,只能問遠程oracle 的管理員了。
select * from V$version ;
不同版本,或者不同作業系統的,請到官方網站下載,裡面有詳細說明。
http://www.oracle.com/technology/tech/oci/instantclient/index.html
2.先建立三個用戶端的安裝目錄,這三個目錄可以自訂,但配置環境變數時,需要一致。
mkdir -p /opt/oracle/lib
mkdir -p /opt/oracle/sdk
mkdir -p /opt/oracle/network/admin //配置監聽器和網路環境。
3.解壓上面下載的三個檔案。
unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip
unzip oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
其中,這二個檔案都解壓到目前的目錄下的同一個目錄下面:instantclient_10_2
cd instantclient_10_2
把這個目錄下的所有檔案搬到 /opt/oracle/lib
最後解壓oracle-instantclient-devel-10.2.0.4-1.i386.zip 把解壓出來的檔案 /opt/oracle/sdk
4.配置環境變數。
vi /etc/profile //注意,這是針對所有使用者的環境變數,如果你想局限某使用者,只能配置使用者的設定檔了。
加入
export ORACLE_HOME=/opt/oracle
export LD_LIBRARY_PATH=/opt/oracle/lib
儲存並退出。
[root@localhost tmp]# source /etc/profile //使設定檔立刻生效
[root@localhost tmp]# echo $ORACLE_HOME //查看一下配置的環境變數是否成功
/opt/oracle
5.配置監聽器和網路環境。
因為本地沒有安裝oracle 資料庫,所以需要從安裝oracle 資料庫的目錄弄三個檔案過來。
[root@localhost admin]# pwd
/opt/oracle/network/admin
[root@localhost admin]# ls
listener.ora sqlnet.ora tnsnames.ora //就這三個檔案,放到這個目錄下
6.編輯三個檔案
vi tnsnames.ora
BOSSDATA =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.107)(PORT = 1521)) //192.168.1.107 IP地址 ,連接埠號碼:1521
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = bossdata) //bossdata 全域資料名
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
vi listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = \opt\oracle) //注意,這個是剛才配置的$ORACLE_HOME
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.107)(PORT = 1521)) //這個上面有說明
)
)
7.已完成。測試。
cd \opt\oraclelib
[root@localhost lib]# sqlplus
sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
//如果出現上面的問題,代表你的環境變數沒設定好。請參考:第四點。
[root@localhost lib]# sqlplus system/javama@bossdata
SQL*Plus: Release 10.2.0.4.0 - Production on Sun Aug 1 12:20:08 2010
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
這樣測試用戶端沒問題了,再安裝perl 的DBD