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-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 –包含頭文件和示例文件,為開發(fā)Oracle應用程序的即時客戶端; oracle-instantclient19.5-odbc-19.5.0.0.0-1.i386.rpm –補充包/文件,為運行ODBC環(huán)境附加庫; 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}兩個文件夾;
創(chuàng)建監(jiān)聽文件,并添加內容
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下就可以了
配置環(huán)境變量 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
發(fā)現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
創(chuàng)建監(jiān)聽文件,并添加內容,這邊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文件來用就可以了
配置環(huán)境變量 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
原來我們公司服務器oracle也是64位T-T。。。。
總結
以上所述是小編給大家介紹的CentOS8下安裝oracle客戶端完整(填坑)過程分享,希望對大家有所幫助!
相關文章
Oracle cloud control 12c的啟動、關閉及獲取安裝信息的方法
這篇文章主要介紹了Oracle cloud control 12c的啟動、關閉及獲取安裝信息的方法,例如獲取安裝時設定的各類端口號,URL以及如何啟動、關閉cloud control等等,需要的朋友可以參考下2014-11-11Oracle 高速批量數據加載工具sql*loader使用說明
SQL*Loader(SQLLDR)是Oracle的高速批量數據加載工具,這是一個非常有用的工具,可用于多種平面文件格式向Oralce數據庫中加載數據2012-12-12Oracle?exadata存儲節(jié)點更換內存操作及報錯處理方法
在進行Oracle?Exadata巡檢時,發(fā)現cell節(jié)點內存報錯,需確認內存PN號及大小,并更換備件,這篇文章主要介紹了Oracle?exadata存儲節(jié)點更換內存操作及報錯處理的相關資料,需要的朋友可以參考下2024-10-10