sábado, 8 de agosto de 2020

oci8 Oracle OpenSuse

Fuente: https://en.opensuse.org/SDB:Howto_build_oci8_extension_module_for_php

openSUSE 13.2 (x86_64)

ArchivosNecesarios
oci8-2.0.8.tgz
oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

# yast -i php5-devel make gcc

# rpm -iv oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
# rpm -iv oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

# rpm -ql oracle-instantclient12.1-basic

/usr/lib/oracle/12.1/client64/bin/adrci
/usr/lib/oracle/12.1/client64/bin/genezi
/usr/lib/oracle/12.1/client64/lib/libclntsh.so.12.1
/usr/lib/oracle/12.1/client64/lib/libclntshcore.so.12.1
/usr/lib/oracle/12.1/client64/lib/libipc1.so
/usr/lib/oracle/12.1/client64/lib/libmql1.so
/usr/lib/oracle/12.1/client64/lib/libnnz12.so
/usr/lib/oracle/12.1/client64/lib/libocci.so.12.1
/usr/lib/oracle/12.1/client64/lib/libociei.so
/usr/lib/oracle/12.1/client64/lib/libocijdbc12.so
/usr/lib/oracle/12.1/client64/lib/libons.so
/usr/lib/oracle/12.1/client64/lib/liboramysql12.so
/usr/lib/oracle/12.1/client64/lib/ojdbc6.jar
/usr/lib/oracle/12.1/client64/lib/ojdbc7.jar
/usr/lib/oracle/12.1/client64/lib/xstreams.jar

# tar -zxvf oci8-2.0.8.tgz
# cd oci8-2.0.8
# phpize
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226
# ./configure -with-oci8=shared,instantclient,/usr/lib/oracle/12.1/client64/lib
#  make install
# ll /usr/lib64/php5/extensions/
-rwxr-xr-x 1 root root 571371 Sep  2 18:11 oci8.so
# vi /etc/sysconfig/apache2
LD_LIBRARY_PATH="/usr/lib/oracle/12.1/client64/lib/"
# vi /etc/php5/apache2/php.ini
extension=oci8.so
# ln -s /usr/lib/oracle/12.1/client64/lib/libnnz12.so /usr/lib64/libnnz12.so
rcapache2 restart
cat /var/log/apache2/error_log | grep 'oci8.so'

    get the instant client for oracle site: http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html

In this case get the 10.2.0.4 Version
[oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm (34,654,975 bytes) (cksum - 2995184583)]
[oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm (289,838 bytes) (cksum - 2347152071)]

    Install package

> rpm -iv oracle-instantclient-basic-10.2.0.4-1.i386.rpm
> rpm -iv oracle-instantclient-devel-10.2.0.4-1.i386.rpm

    list the install files

> rpm -ql oracle-instantclient-basic-10.2.0.4-1.x86_64
/usr/lib/oracle/10.2.0.4/client64/bin/genezi
/usr/lib/oracle/10.2.0.4/client64/lib/libclntsh.so.10.1
/usr/lib/oracle/10.2.0.4/client64/lib/libnnz10.so
/usr/lib/oracle/10.2.0.4/client64/lib/libocci.so.10.1
/usr/lib/oracle/10.2.0.4/client64/lib/libociei.so
/usr/lib/oracle/10.2.0.4/client64/lib/libocijdbc10.so
/usr/lib/oracle/10.2.0.4/client64/lib/ojdbc14.jar

 install the php5-devel rpm from yast and other devel tools

> yast -i php5-devel gcc make

   
download the PECL OCI8 package,

> wget http://pecl.php.net/get/oci8-1.4.1.tgz

    Extract the package:

> tar -zxvf oci8-1.4.1.tgz
> cd oci8-1.4.1

    Prepare the package:

> phpize

    Configure the package, either using path Instant Client

> ./configure -with-oci8=shared,instantclient,/usr/lib/oracle/10.2.0.4/client/lib

    Install the package:

> make install

    Verify installation

"Installing shared extensions: /usr/lib64/php5/extensions/"
> ll /usr/lib64/php5/extensions/
-rwxr-xr-x 1 root root 486841 Jul 13 11:56 oci8.so

    Make a symbolic link

> ln -s /usr/lib/oracle/10.2.0.4/client64/lib/libnnz10.so /usr/lib64/libnnz10.so

    After either an manual install, edit your php.ini file and add the line:

extension=oci8.so

    Restart apache server

> /etc/init.d/apache2 restart

    check logs files;

> cat /var/log/apache2/error_log | grep 'oci8.so'

    And check the phpinfo();

"OCI8 Support enabled "

If don't have any error, the installation is ok

dorancemc[AT]yahoo.com

No hay comentarios: