本文共 2819 字,大约阅读时间需要 9 分钟。
在Linux上启用PHP OCI8扩展 要在Linux上添加Oracle连接,需要重新编译PHP。 1.下载并安装Apachecd apache_1.3.31./configure --prefix=/usr/local/apache \ --enable-module=so \ --enable-shared=max \ --enable-module=mostmakemake install--enable-module=so so模块用来提供DSO支持的apachehe核心模块 --enable-shared=max 除了so以外的所有标准模块都编译成DSO模块(so不能被编译成DSO) --enable-module=most 将一些常用的,不在缺省常用模块中的模块编译进Apache 2.下载并解压Instant Client instantclient-odbc-linux32、instantclient-jdbc-linux32根据自己需要是否解压。
unzip instantclient-basic-linux32-10.2.0.3-20061115.zip -d /tmpunzip instantclient-sdk-linux32-10.2.0.3-20061115.zip -d /tmpunzip instantclient-sqlplus-linux32-10.2.0.3-20061115.zip -d /tmpmv instantclient_10_2 /usr/localexport LD_LIBRARY_PATH=/usr/local/instantclient_10_2cd $LD_LIBRARY_PATHln -s libclntsh.so.10.1 libclntsh.soln -s libocci.so.10.1 libocci.so 实际安装时,并未创建此连接ln -s libsqora.so.10.1 libsqora.so 实际安装时,并未创建此连接3.下载并安装php
tar -xvzf php-5.2.3.tar.gz./configure --prefix=/usr/local/php \ --with-apxs=/usr/local/apache/bin/apxs \ --with-oci8=instantclient,$LD_LIBRARY_PATH \ --enable-sigchildmakemake installcp php.ini-dist /usr/local/lib/php.ini4.编辑/usr/local/apache/conf/httpd.conf 并添加:
AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phpsServerName 127.0.0.1DocumentRoot "/var/www"5.测试OCI8支持 <?php phpinfo(); ?> 浏览器页面应包含一个显示“OCI8 Support enabled”的“oci8”部分。 6.测试连接Oracle (A)sqlplusDirectoryIndex index.html index.php
export LD_LIBRARY_PATH=/usr/local/instantclient_10_2export TNS_ADMIN=/usr/local/instantclient_10_2sqlnet.ora文件内容如下:SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES)tnsnames.ora文件内容如下:test = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521)) ) (CONNECT_DATA = (SID = test) ) )./sqlplus user/passwd@test(B)php
vi /etc/rc.localexport LD_LIBRARY_PATH=/usr/local/instantclient_10_2export TNS_ADMIN=/usr/local/instantclient_10_2export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"/usr/local/apache/bin/apachectl startvi /var/www/testoci.php \n"; } ocilogoff($conn);?>在FC3下通过。 在Windows上启用PHP OCI8扩展 1.从OTN的Instant Client页面下载用于Windows的Instant Client Basic程序包。 2.创建一个子目录(例如,c:\instantclient10_1),然后从压缩文件中复制以下库: oraociei10.dll、orannzsbb10.dll、oci.dll 要使用PHP老版本的“oracle”扩展(在php.ini中使用“extension=php_oracle.dll”启用),则复制ociw32.dll而非 oci.dll。 3.将c:\instantclient10_1添加到PATH中(位于其他Oracle目录之前)。 如果使用了tnsnames.ora文件定义Oracle Net服务名称,则将tnsnames.ora复制到c:\instantclient10_1,并将用户环境变量TNS_ADMIN设置为c:\instantclient10_1。也可以在用户环境变量LOCAL中定义默认的服务名称。 设置必要的Oracle全球化语言环境变量,如NLS_LANG。如果没有设置,则使用默认的本地环境。有关更多详细信息,请参见Oracle PHP应用程序全球化概述。 无需设置不必要的Oracle变量,如ORACLE_HOME和ORACLE_SID。 4.编辑php.ini,并不要将OCI8扩展设为注释: extension=php_oci8.dll 将extension_dir指令设置为完整的PHP扩展DLL路径。在PHP 4中,DLL位于PHP软件的“extensions”子目录中。在PHP 5中,它们位于“ext”中。 5.重新启动Apache。
转载地址:http://tssli.baihongyu.com/