ubuntu上安装Oracle InstantClient

工作需要在ubuntu上安装Oracle InstantClient,按道理也比较简单,今天就将安装过程记录下来。

环境:

Ubuntu14.04 LTS Server

因为服务器用的是 Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 – 64bit Production

所以按照对应版本下载 InstantClient:http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

根据要求,我分别下载了Basic、SDK和Sqlplus包。

下面介绍两种安装方式:

一、直接下载相关ZIP包,这种方式最为简单

1、将三个ZIP包解压之后,合并到一起,然后上传到Ubuntu的某个用户下

2、默认文件夹为instantclient_12_1,设置775权限即可

$ sudo chmod 775 -R instantclient_12_1/

3、测试程序运行,显示内部服务器错误。报错信息如下:

 Oracle Client library cannot be loaded: libclntsh.so

提示无效的命令,这肯定是环境变量的问题

4、添加环境变量,然后执行没有问题

$ export PATH=/home/lst001/pack/instantclient_12_1/:$PATH

$ export LD_LIBRARY_PATH=/home/lst001/pack/instantclient_12_1/:$LD_LIBRARY_PATH

5、我们同样可以将该环境变量添加到系统级别,这时候每次重启就直接读取环境变量了

$ sudo vi /etc/profile

将上面的信息添加到该文件的后面

然后生效环境变量

$ source /etc/profile

$ echo $PATH

/home/lst001/pack/instantclient_12_1/:/home/lst001/anaconda3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

这样就安装完毕了。

二、下载相关的RPM包

这种方式就比较麻烦了,因为RPM包是红帽和CentOS才识别的,如何才能在Ubuntu上安装RPM呢?

1、安装alien工具

apt-get install alien

2、使用alien命令将RPM转换为Ubuntu识别的deb包

$ sudo alien -k oracle-instantclient-basic-10.2.0.5-1.x86_64.rpm

oracle-instantclient-basic_10.2.0.5-1_amd64.deb generated

$ sudo alien -k oracle-instantclient-devel-10.2.0.5-1.x86_64.rpm

oracle-instantclient-devel_10.2.0.5-1_amd64.deb generated

$ sudo alien -k oracle-instantclient-sqlplus-10.2.0.5-1.x86_64.rpm

oracle-instantclient-sqlplus_10.2.0.5-1_amd64.deb generated

3、使用dpkg命令安装deb包

$ sudo dpkg -i oracle-instantclient-basic_10.2.0.5-1_amd64.deb

Selecting previously unselected package oracle-instantclient-basic.

(Reading database … 61710 files and directories currently installed.)

Preparing to unpack oracle-instantclient-basic_10.2.0.5-1_amd64.deb …

Unpacking oracle-instantclient-basic (10.2.0.5-1) …

Setting up oracle-instantclient-basic (10.2.0.5-1) …

Processing triggers for libc-bin (2.19-0ubuntu6.5) …

$ sudo dpkg -i oracle-instantclient-devel_10.2.0.5-1_amd64.deb

Selecting previously unselected package oracle-instantclient-devel.

(Reading database … 61725 files and directories currently installed.)

Preparing to unpack oracle-instantclient-devel_10.2.0.5-1_amd64.deb …

Unpacking oracle-instantclient-devel (10.2.0.5-1) …

Setting up oracle-instantclient-devel (10.2.0.5-1) …

$ sudo dpkg -i oracle-instantclient-sqlplus_10.2.0.5-1_amd64.deb

Selecting previously unselected package oracle-instantclient-sqlplus.

(Reading database … 61768 files and directories currently installed.)

Preparing to unpack oracle-instantclient-sqlplus_10.2.0.5-1_amd64.deb …

Unpacking oracle-instantclient-sqlplus (10.2.0.5-1) …

Setting up oracle-instantclient-sqlplus (10.2.0.5-1) …

4、系统会默认安装在如下路径

supermap@computer:/usr/lib/oracle/10.2.0.5/client64$ pwd

/usr/lib/oracle/10.2.0.5/client64

5、同样,我们将环境变量添加上去即可

export ORACLE_HOME=/usr/lib/oracle/10.2.0.5/client64

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

export PATH=$ORACLE_HOME/bin:$PATH

相对来说,还是第一种方法比较简单,但是通过第二种方法也学习到了如何在必须安装RPM条件下的解决办法!

    原文作者:唐山_risk
    原文地址: https://www.jianshu.com/p/847b5a51244a
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞