您好,登錄后才能下訂單哦!
怎么在CentOS8系統中安裝oracle客戶端?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
oracle32位客戶端安裝
首先uname -a
Linux localhost.localdomain 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
可以看到我的電腦是64位,系統版本是CentOS8,然而服務器oracle數據庫是32位的,所以我首先想到安裝32位的oracle客戶端
進入oracle官網下載
oracle-instantclient19.5-basic-19.5.0.0.0-1.i386.rpm oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.i386.rpm oracle-instantclient19.5-devel-19.5.0.0.0-1.i386.rpm(聽別人說這個包也可以不下,我懶,不試)
rpm格式包詳解
oracle-instantclient19.5-basic-19.5.0.0.0-1.i386.rpm –基礎包,為了運行OCI、OCCI、JDBC-OCI 這幾個應用程序; oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.i386.rpm –補充包/文件,是為了運行sql*plus的即時客戶端; oracle-instantclient19.5-devel-19.5.0.0.0-1.i386.rpm –包含頭文件和示例文件,為開發Oracle應用程序的即時客戶端; oracle-instantclient19.5-odbc-19.5.0.0.0-1.i386.rpm –補充包/文件,為運行ODBC環境附加庫; oracle-instantclient19.5-jdbc-19.5.0.0.0-1.i386.rpm –補充JDBC下的XA、國際標準、行集操作;
依次安裝
rpm -ivh oracle-instantclient19.5-basic-19.5.0.0.0-1.i386.rpm rpm -ivh oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.i386.rpm rpm -ivh oracle-instantclient19.5-devel-19.5.0.0.0-1.i386.rpm
安裝的文件默認放在兩個位置:
頭文件:/usr/include/oracle/19.5/client/ 下,如果在使用時報錯找不到頭文件,記得看路徑是否是這個。
包文件:/usr/lib/oracle/19.5/client/ 下,包含{bin、lib}兩個文件夾;
創建監聽文件,并添加內容
vim /usr/lib/oracle/19.5/client/lib/network/admin/tnsnames.ora ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = *IP*)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = *SID*) ) )
這里我是要連公司的oracle服務器,所以是直接復制服務器下的tnsnames.ora文件放到admin下就可以了
配置環境變量 vim /etc/profile,添加
#oracle19.5 export ORACLE_BASE=/usr/lib/oracle/19.5 export ORACLE_VERSION=19.5 export ORACLE_HOME=/usr/lib/oracle/$ORACLE_VERSION/client export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export SQLPATH=$ORACLE_HOME/lib/network/admin export TNS_ADMIN=$ORACLE_HOME/lib/network/admin export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 #export NLS_LANG="Simplified Chinese_china".ZHS16GBK export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
配置保存后
source /etc/profile
即可使配置即時生效
之后連接數據庫測試
sqlplus /nolog
尷尬,提示:
bash: /bin/sqlplus: 沒有此一檔案或目錄
排查原因,這位老哥讓我死心了:ubuntu 14.04 oracle 11g 64位數據庫安裝圖文教程
老老實實卸載重裝64位嗷T_T
oracle64位客戶端安裝
先看看安裝了哪些
rpm -qa | grep oracle
發現3個待宰羔羊
oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.i386 oracle-instantclient19.5-basic-19.5.0.0.0-1.i386 oracle-instantclient19.5-devel-19.5.0.0.0-1.i386
考慮到三者之間可能會有依賴關系,rpm -e不夠強力,所以直接加上–nodeps,簡單粗暴
rpm -e --nodeps oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.i386 rpm -e --nodeps oracle-instantclient19.5-basic-19.5.0.0.0-1.i386 rpm -e --nodeps oracle-instantclient19.5-devel-19.5.0.0.0-1.i386
然后老套路,下載64位包:oracle官網下載
oracle-instantclient19.5-basic-19.5.0.0.0-1.x86_64.rpm oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.x86_64.rpm oracle-instantclient19.5-devel-19.5.0.0.0-1.x86_64.rpm
安裝
rpm -ivh oracle-instantclient19.5-basic-19.5.0.0.0-1.x86_64.rpm rpm -ivh oracle-instantclient19.5-sqlplus-19.5.0.0.0-1.x86_64.rpm rpm -ivh oracle-instantclient19.5-devel-19.5.0.0.0-1.x86_64.rpm
創建監聽文件,并添加內容,這邊19.5后面的client多了個64~
vim /usr/lib/oracle/19.5/client64/lib/network/admin/tnsnames.ora加入 ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = *IP*)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = *SID*) ) )
這里我是要連公司的oracle服務器,所以是直接復制服務器下的tnsnames.ora文件來用就可以了
配置環境變量 vim /etc/profile,添加
#oracle19.5 export ORACLE_BASE=/usr/lib/oracle/19.5 export ORACLE_VERSION=19.5 export ORACLE_HOME=/usr/lib/oracle/$ORACLE_VERSION/client64 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export SQLPATH=$ORACLE_HOME/lib/network/admin export TNS_ADMIN=$ORACLE_HOME/lib/network/admin export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 #export NLS_LANG="Simplified Chinese_china".ZHS16GBK export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
配置保存后
source /etc/profile
即可使配置即時生效
之后連接數據庫測試
sqlplus /nolog sqlplus: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory
咋又報錯了,我容易嗎我,555~
可以看到,這個錯誤的關鍵字是libnsl.so.1,biying一下~
原來是缺少庫文件
這里安裝庫包
dnf install libnsl
再輸入
sqlplus /nolog SQL*Plus: Release 19.0.0.0.0 - Production on Sat Dec 28 14:21:33 2019 Version 19.5.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. SQL>
到這里證明已經安裝成功,遠程連接可用如下形式:
sqlplus scott/123456:192.168.111.111:1521/orcl
按理來說目前我是可以連接oracle數據庫了,但是,沒有那么簡單。。。。輸入連接命令后提示:
ERROR:
ORA-12170: TNS:Connect timeout occurred
照例,biying一下~
這位老哥說的不錯,ORA-12170:TNS connect timeout occurred
果然,ping不通服務器。
下面就是聯系網管打一頓了
~-------------------------------------
ping通網絡后,連接如下
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
關于怎么在CentOS8系統中安裝oracle客戶端問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。