Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/09/2009, à 21:42

TeraBloc

module oci8 pour php

Salut tout le monde, actuellement je réinstalle oracle sur mon pc car j'ai un cours sur oracle.
Donc j'ai d'abord installé quelques paquets nécessaire pour le fonctionnement de oracle 10g 32 bits sur un système 64 puis j'ai installé oracle-xe-client puis oracle-xe-server. Jusque là ça marche.
Ensuite j'ai suivi ce tuto comme d'habitude (qui installe entre autre instantclient) : http://chilipuppy.blogspot.com/2008/10/purpose-im-working-on-building-python.html et avec python la connexion à oracle s'effectue moyennant la modification de 2 fichiers.

Le premier c'est /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora :

# listener.ora Network Configuration File:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /usr/lib/oracle/xe/app/oracle/product/10.2.0/server)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
      (ADDRESS = (PROTOCOL = TCP)(HOST = Vandervoortness)(PORT = 1521))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

Et le second c'est /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/tnsnames.ora :

# tnsnames.ora Network Configuration File:

XE =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = Vandervoortness)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = XE )
    )
  )

Ensuite j'ai essayé d'installer oci8 avec pecl et je lui donne comme path : instantclient,/usr/local/oracle/instantclient_11_1/ et il s'installe sans problème. Je modifie les fichiers de config d'apache pour lui ajouter l'extension oci8 et je relance apache. Je teste un oci_connect et ça foire.
Le message :

Warning: oci_connect() [function.oci-connect]: ORA-12154: TNS:could not resolve the connect identifier specified in /home/sylvain/Php/ANNEXES/oracle.php on line 5

Alors j'essaie de reconfigurer oci8 avec comme path /usr/lib/oracle/xe/app/oracle/product/10.2.0/client mais lors de la compile, voilà l'erreur affichée :

/bin/bash /home/sylvain/telechargements/ORACLE/oci8-1.3.5/oci8-1.3.5/libtool --mode=link gcc -DPHP_ATOM_INC -I/home/sylvain/telechargements/ORACLE/oci8-1.3.5/oci8-1.3.5/include -I/home/sylvain/telechargements/ORACLE/oci8-1.3.5/oci8-1.3.5/main -I/home/sylvain/telechargements/ORACLE/oci8-1.3.5/oci8-1.3.5 -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -I/usr/lib/oracle/xe/app/oracle/product/10.2.0/client//rdbms/public -I/usr/lib/oracle/xe/app/oracle/product/10.2.0/client//rdbms/demo  -DHAVE_CONFIG_H  -g -O2   -o oci8.la -export-dynamic -avoid-version -prefer-pic -module -rpath /home/sylvain/telechargements/ORACLE/oci8-1.3.5/oci8-1.3.5/modules  oci8.lo oci8_lob.lo oci8_statement.lo oci8_collection.lo oci8_interface.lo -Wl,-rpath,/usr/lib/oracle/xe/app/oracle/product/10.2.0/client//lib -L/usr/lib/oracle/xe/app/oracle/product/10.2.0/client//lib -lclntsh
libtool: link: gcc -shared  .libs/oci8.o .libs/oci8_lob.o .libs/oci8_statement.o .libs/oci8_collection.o .libs/oci8_interface.o   -L/usr/lib/oracle/xe/app/oracle/product/10.2.0/client//lib -lclntsh  -Wl,-rpath -Wl,/usr/lib/oracle/xe/app/oracle/product/10.2.0/client//lib   -Wl,-soname -Wl,oci8.so -o .libs/oci8.so
/usr/bin/ld: skipping incompatible /usr/lib/oracle/xe/app/oracle/product/10.2.0/client//lib/libclntsh.so when searching for -lclntsh
/usr/bin/ld: cannot find -lclntsh
collect2: ld returned 1 exit status
make: *** [oci8.la] Erreur 1

Alors je ne comprends pas ce qu'il veut donc si vous pouviez me dire pourquoi il m'envoie sur les roses, ce serait sympa car après deux jours sur oracle... ?

Merci d'avance et désolé pour la longueur du post. smile


Je l'avoue, je lis tous les posts des gens qui me répondent... :D

PC fixe : i3-540 - chipset graphique intégré - 4Go DDR3 1600 - Gigabyte H55M-UD2H. Ubuntu 10.04/10.10 (gnome) 64bits Windows 7 pro
PC portable : C2D P8700 (2.5GHz, 1066, 3Mo cache) - nVidia 130M (1Go) - 4Go DDR2 800. Ubuntu 10.04 (gnome) 64bits

Hors ligne

#2 Le 27/09/2009, à 06:12

TeraBloc

Re : module oci8 pour php

up ?


Je l'avoue, je lis tous les posts des gens qui me répondent... :D

PC fixe : i3-540 - chipset graphique intégré - 4Go DDR3 1600 - Gigabyte H55M-UD2H. Ubuntu 10.04/10.10 (gnome) 64bits Windows 7 pro
PC portable : C2D P8700 (2.5GHz, 1066, 3Mo cache) - nVidia 130M (1Go) - 4Go DDR2 800. Ubuntu 10.04 (gnome) 64bits

Hors ligne

#3 Le 27/09/2009, à 10:41

sylvain1970

Re : module oci8 pour php

Bonjour,
la réponse m'intéresse aussi (je n'ai jamais réussi à faire marcher oci8 en 64 bits)

Hors ligne

#4 Le 27/09/2009, à 22:28

TeraBloc

Re : module oci8 pour php

ben le pire c'est que sur mon précédent pc, il marchait. Alors je sais pas ce que j'avais fait différemment mais bon. Là Oracle marche, c'est juste la communication entre php et oracle qui ne marche pas. En python j'arrive à ouvrir une connexion avec oracle sans pb mais je m'en fou de python XD


Je l'avoue, je lis tous les posts des gens qui me répondent... :D

PC fixe : i3-540 - chipset graphique intégré - 4Go DDR3 1600 - Gigabyte H55M-UD2H. Ubuntu 10.04/10.10 (gnome) 64bits Windows 7 pro
PC portable : C2D P8700 (2.5GHz, 1066, 3Mo cache) - nVidia 130M (1Go) - 4Go DDR2 800. Ubuntu 10.04 (gnome) 64bits

Hors ligne

#5 Le 28/09/2009, à 15:07

Tonio

Re : module oci8 pour php

Yop,

A l'époque j'avais suivi ça et ca marchais:
http://www.herewithme.fr/installer-oracle-xe-php5-pdo-pdo_oci-snmpd-sur-debian-etch

Tonio

Hors ligne