Unbuntu离线安装oci8及Oracle

rpm包下载

rpm包下载地址

安装alien

deb包管理地址

1
2
将下载好的deb包上传至服务器
sudo dpkg -i *.deb

安装Oracle

1
2
3
4
5
6
7
cd /path/Oracle的rpm所在文件夹
执行:
sudo alien -i *.rpm
或者
sudo alien -i oracle-instantclient11.1-basic-xxxxx.x86_64.rpm
sudo alien -i oracle-instantclient11.1-devel-xxxxx.x86_64.rpm
sudo alien -i oracle-instantclient11.1-sqlplus-xxxxx.x86_64.rpm

修改/etc/profile

1
2
3
4
5
6
7
8
sudo vim /etc/profile
写入:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export ORACLE_BASH=/usr/lib/oracle/11.2
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH:/usr/local/lib:/opt/cloudera/impalaodbc/lib/64
Export NLS_LANG=AMERICAM_AMERICA.AL32UTF8
:wq
source /etc/profile

安装oci8

oci8下载地址

1
2
3
4
5
tar xvf oci8.***.taz
cd oci8.***
sudo phpize
sudo ./configure --with-oci8=share,instantclient,/usr/lib/oracle/11.2/client64/lib/
sudo make && make install

php.ini写入oci8.so

1
2
3
4
vim /etc/php5/apache2/php.ini
最后一行写入:
extension = /usr/lib/php5/20121212/oci8.so
:wq

重启apache

1
sudo service apache2 restart

常见问题

1、提示依赖问题则在deb包管理地址里面下载相应的依赖文件

2、如果php -m 存在oci8 但phpinfo()不存在,则看下是否在php.ini写入了oci8.so

3、我的服务器是Unbuntu,用的是Apache, 如果是nginx则参考上面流程即可