Ubuntu Server 安装Oracle客户端,php 扩展
1、安装RPM文件
在Oracle官网下载Oracle Instant Client RPM文件(http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html)
下载以下3个文件,下载需要的版本,本文下载的版本是12.1.0.2.0。
oracle-instantclient-basic*.rpm
oracle-instantclient-sqlplus*.rpm
oracle-instantclient-devel*.rpm
2、使用工具alien来转换或安装rpm文件,如果还没有安装,使用以下命令安装
sudo apt-get install alien
安装alien后,接着运行下面的命令,安装Oracle客户端
alien -i oracle-instantclient-basic*.rpm
alien -i oracle-instantclient-sqlplus*.rpm
alien -i oracle-instantclient-devel*.rpm
3、接着再来,安装 libaio.so.1 文件,运行
sudo apt-get install libaio1
安装完成,通过 sqlplus 测试一下
sqlplus64 username/password@//dbhost:1521/SID
报以下错误:
sqlplus64: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
指定tnsnames.ora
进入到Oracle客户端目录
cd /usr/lib/oracle/12.1/client64
新建目录 network/admin
sudo mkdir -p network/admin
新建 tnsnames.ora 文件
sudo vi tnsnames.ora
填写如下内容,或者直接从oracle服务器端将相同目录下的这个文件拷贝过来。
#tnsnames.ora Network Configuration File: /usr/lib/oracle/12.1/client64/network/admin/tnsnames.ora
ZXCP =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.253)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = zxcp)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
再新建sqlnet.ora
sudo vi sqlnet.ora
写入:
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
配置环境变量
export ORACLE_HOME=/usr/lib/oracle/12.1/client64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$PATH:$ORACLE_HOME/bin
再次运行 sqlplus64 username/password@//dbhost:1521/SID
成功~
安装 PHP 扩展:
pecl install oci8