[MEGOLDVA] Archlinux - PHP-OCI (Oracle Connect Interface) kliens hogyan?

Fórumok

A cimben levo php kiegeszitesnek nem talaltam semmilyen leirast Arch Linuxhoz, se mukodo AUR bejegyzest, se semmit (csak az SQL developeres AUR build mukodott eros utanarugdosassal es oralis rasegitessel). Ami miatt kellene, az ott kezdodott, hogy AUR-bol is elhasalt az Oracle Express telepitese, rpm kitelepitgetesevel meg nem akartam osszekokanyolni a rendszeremet (illetve akartam, de az se sikerult, bar melyebben nem nyultam bele), igy vegul ismeros rakta fel a gepere az Oracle express szervert sikeresen. A vegen az o gepen is hosztolnank a (sulihoz kello) projektet, csak az ftpfs nem megy az o lassu netjevel olyan szepen, ahogy azt en gondoltam volna (proftpd, overwrite-nal vannak a leginkabb bajok), ssh-jan nem hajlando nekem usert csinalni, igy maradt az, hogy amig csak probalkozok meg probalgatom a programot, addig az OCI connectnek az o hosztjat adnam meg localhost helyett, webszerverem meg nekem is van.

Vagy szerintetek erdemes emiatt egy Fedora-szeru disztrot felrakni virtualboxba/vmware-be, es azon probalgatni? Es akkor arra rpm-bol mar konnyebben fel fog menni az Oracle express? Ezesetben felmerul a kerdes, hogy port forward konnyeden megoldhato-e a guestnek, ugyanis bevallom, ilyet meg nem csinaltam.

[KLIENS OLDAL TELJES EGESZEBEN MEGOLDVA, TEHAT PHP-BAN MEGY MAS HOSZTJARA AZ OSI]

#Teendok:

#add hozza a pacman repoihoz a nemhivatalos Oracle repot:

$ $EDITOR /etc/pacman.conf


[oracle]
SigLevel = Optional TrustAll
Server = http://linux.shikadi.net/arch/$repo/$arch/

##source: Arch wiki: https://wiki.archlinux.org/index.php/Oracle_client

#telepitsd fel az alabbi 2 programot:

$ pacman -Sy oracle-instantclient-basic oracle-instantclient-sdk

#telepitsd fel a php-pear -t

$ pacman -S php-pear

#pear-rel tedd fel az OCI kiegeszitest php-hoz:

$ pear search oci
$ pear install MDB2_Driver_oci8
$ pecl install oci8

#kezzel kell betenned a /etc/php/php.ini-be azt a sort, amire a vegen a pecl install oci8 parancs fog kerni: utana keszen vagy, a php-nek mar nem lesz idegen az oci_connect() fuggveny

$ $EDITOR /etc/php/php.ini

extension=oci8.so

#utana keszen vagy, a php-nek mar nem lesz idegen az oci_connect() fuggveny

##nekem Apache-sal nem mukodott utana, csak parancssorrol, nginx-szel viszont megy szepen. Nginx+php telepites: https://wiki.archlinux.org/index.php/Nginx

Hozzászólások

szerk.: ez se oldja meg: https://wiki.archlinux.org/index.php/Oracle_client
igaz, csak a


oracle/oracle-instantclient-basic 11.2.0.3.0-3 [installed]
    Light replacement for the Oracle client (files to run OCI, OCCI and JDBC-OCI programs)

csomagot raktam fel, ezen kivul masik 4 instant clientes cucc van benne, de nem hiszem hogy azok kellenenek:


oracle/oracle-instantclient-jdbc 11.2.0.3.0-2
    Additional support for XA, Internationalization, and RowSet operations under JDBC
oracle/oracle-instantclient-odbc 11.2.0.3.0-2
    Additional libraries for enabling ODBC applications with Instant Client
oracle/oracle-instantclient-sdk 11.2.0.3.0-2
    Additional header files for developing Oracle applications with Instant Client
oracle/oracle-instantclient-sqlplus 11.2.0.3.0-2
    SQL*Plus for Oracle Instant Client

maga a hibauzenet parancssorrol pedig:

 PHP Fatal error:  Call to undefined function oci_connect() 

Ha össze tgz-zem neked az /usr/lib/oracle könyvtáramat, te bemásolod és állítasz rá egy ORACLE_HOME-ot majd forgatsz php-t, akkor sztem ez megoldja a problémádat.

$phpize
Cannot find config.m4.
Make sure that you run '/usr/bin/phpize' in the top level source directory of the module

Archban tudtommal a php csomag tartalmazza a php-dev-et (fixme), kulon csomag nincs ra (masban amihez kell -devel mas disztroban, azt az Archos alapcsomag tartalmazni szokta, pl. Archos qt csomag resze a libqt4-devel)

update: kozben talaltam egy php-pear -t pacmannel, de ott make errort dob a "pecl install oci8" parancs, mikor fordulna a forras (configure-on tulmegy, de oci.h-t hianyolja)

szerk.: ezt a nemhivatalos repobol sdk vegu csomagot felrakva megoldottam

php ini-vel van mar csak gondja mert az nem ott van Archban, ahol a pear/pecl-nek tetszik, manualisan fixaltam, mindjart hivatalosan is leirom, mit muveltem, mert mostmar megy

Mondjuk az Apache-nak meg nem nagyon tetszik, azzal is csinalni kene valamit, de a parancssorrol "php oracleteszt.php" mar gyonyoruen kirajzolna a tablazatot a tag-ek alapjan. Erre valami otlet? Mivel nem localhoston van az Oracle szerver lehet valami timeout-ot kene novelni, de az biztos, hogy apache-bol szinte sose jon be, parancssorrol meg mindig