Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] [Résolu]Installation jcommunity avec oracle comme SGBD

Posted by willy on 04/14/2011 12:45

Salut,

J'utilise jelix 1.2

Je voudrai utiliser le module jcommunity avec une base de données oracle. Dans le fichier de configuration dbprofils.ini.php, j'ai mis ceci :

driver="oci8"
database="mabase"
host= "basewill"
user= "will"
password="will"
persistent= on

usepdo=on

Après le positionnement de ces paramètres, j'ai lancé la commande installmodule pour installer jcommunity. Mais je ne parviens pas à me connecter à la base de données avec ces paramètres. Le message d'erreur obtenu est le suivant : 'could not find driver'.

D'après la doc, je ne peux me connecter à oracle qu'en utilisant pdo. Et en consultant mon php.ini, pdo y est et est bien activé. j'utilise php 5.3.3.

Que faut-il faire pour réussir cette installation et réussir à me connecter à oracle ? Comment faut-il configurer pour une connexion réussie à ma base de données avec pdo ? Ou alors y -t-il moyen de faire autrement ? Si, oui, comment s'y prendre concrètement ?

Merci d'avance pour votre aide précieuse !

  [Opened] Installation jcommunity avec oracle comme SGBD

Reply #1 Posted by laurentj on 04/14/2011 13:29

Faudrait déjà savoir d'où vient l'erreur. De PDO ou de jelix ?

Ensuite, je viens de me rendre compte que le driver jelix (qui ne contient que le nécessaire pour jDao), s'appelle oci, et non oci8. Donc jDao va avoir du mal à récupérer les fichiers qu'il attend.

Enfin, il n'y a pas les scripts sql pour oracle dans jCommunity, donc il va falloir installer à la main, créer les tables à la main. Contributions bienvenue ;-)

  [Opened] Installation jcommunity avec oracle comme SGBD

Reply #2 Posted by willy on 04/14/2011 15:11

j'ai modifié la configuration comme vous l'avez dit. j'ai mis oci à la place de oci8. J'ai aussi désactivé l'usage de pdo afin d'utiliser jDao. J'ai lancé l'installation. Voici le message d'erreur obtenu :

Warning: require_once(...lib\jelix/plugins/db/oci/oci.dbconnection.php): failed to open stream: No such file or directory in ...\lib\jelix\db\jDb.class.php on line 178

Fatal error: require_once(): Failed opening required '...\lib\jelix/plugins/db/oci/oci.dbconnection.php' (include_path='.; ...\ZendCE\ZendServer\share\ZendFramework\library') in ...lib\jelix\db\jDb.class.php on line 178

Et en regardant dans le répertoire lib\jelix\plugins\db\oci, le fichier oci.dbconnection.php ne s'y trouve pas. Je n'y vois que trois fichiers : oci.daobuilder.php, oci.dbschema.php, oci.dbtools.php. Que faut-il faire dans ce cas ? Cette erreur me fait comprendre que la connexion à la base ne se fait pas.

Que faire pour réussir la connexion à oracle avant de créer la table manuellement ?

  [Opened] Installation jcommunity avec oracle comme SGBD

Reply #3 Posted by Vincentv on 04/15/2011 17:51

Tu as le client oracle d'installer sur ton serveur? tu as php de configurer avec? (extension php_pdo_oci.dll)

Pour la config d'oracle

[[profil]]
driver="pdo"
dsn="oci:dbname=<hostname>:<port>/<database>"
user=<ton_utilisateur>
password=<ton_password>
usepdo=on
sequence_AI_pattern=<inutile>

pour le dsn, tu as le doc ici http://php.net/manual/fr/ref.pdo-oci.connection.php

et pense a surcharger les daos de jelix pour les rendre compatible aux bases oracle ;)

  [Opened] Installation jcommunity avec oracle comme SGBD

Reply #4 Posted by willy on 04/18/2011 11:08

Merci pour toutes vos réponses !

J'ai réussi la connexion à oracle comme tu l'as décrit Litchi. L'installation s'est faite, mais il y a eu un warning pour signaler l'absence du fichier sql pour la création automatique de la table community_users. Mais ce n'est bloquant. l'installation s'est bien faite. Et je n'ai pas besoin de la table community_users. Donc, je ne vais pas l'installer manuellement. J'ai une ature table pour les utilisateurs. Il ne me reste qu'à faire une surcharge de dao comme suggéré.

Encore une fois merci.

 
Page
  1. Installation jcommunity avec oracle comme SGBD