Page 1 sur 1

Connexion Oracle simple /vs Oracle Cluster

Posté : 23 oct. 2007, 14:04
par Cyrano
Bonjour,
est-ce que quelqu'un aurait lu ou entendu parler de différences entre la manière de se connecter à un serveur Oracle simple et se connecter à la même version d'Oracle en Cluster, dans les deux cas avec PDO ?
En théorie, ça ne devrait pas faire de différence, mais en pratique, on a eu une surprise du genre chez l'hébergeur et si la première marche bien, la seconde plante. Le contenu de la base en cluster est strictement la même que celle de la version simple.
Le message d'erreur sur la version cluster est :

Code : Tout sélectionner

Erreur de connexion sur 10.***.***.*** : SQLSTATE[]: pdo_oci_handle_factory: OCI_INVALID_HANDLE (/var/install/php-5.2.3/ext/pdo_oci/oci_driver.c:469)
Toute idée ou piste sera bienvenue :)

Posté : 23 oct. 2007, 14:29
par zeus
Est-ce que les TNS de connexions sont identiques ?

Sinon, est-ce que les autres paramétrages de tes 2 versions sont identiques ?
Est-ce que tu peux te connecter à la base en cluster autrement qu'avec un script PHP (Toad, phpOraAdmin, ...) ?

Posté : 23 oct. 2007, 14:31
par Cyrano
Je vais transmettre les questions, je ne suis pas en charge de cette partie, merci pour les idées Zeus :)

Posté : 23 oct. 2007, 15:43
par babar972
Je suis un collègue de Cyrano et je suis en charge du pb.

Voici le contexte (sous Linux) :
Environnement pré-production : 1 serveur Apache/php et 1 serveur Oracle
Environnement production : 5 serveurs Apache/php et 2 serveurs Oracle en Cluster

La connexion à Oracle s'effectue avec PDO_OCI

En environnement de pré-prod : Aucun pb
En environnement de prod : Echec de connexion (voir message de Cyrano)
Le test avec sqlplus fonctionne en prod.

Je n'ai pas trouvé de trace d'expérience sur le net autour de PDO_OCI et Oracle cluster.

Posté : 23 oct. 2007, 16:19
par zeus
Je n'ai pas non plus d'expérience sur une install en cluster.

Le seul truc que j'arrive à comprendre, c'est que PHP n'arrive même pas à Oracle puisqu'il n'y a aucun identifiant d'erreur et que le message d'erreur signifie qu'il n'a même pas pu demander l'authentification, même pas de réponse du serveur.

Est-ce que du côté des firewall, tout est OK ?
Est-ce que les serveurs Apache sont dans la même salle blanche que les serveurs Oracle ?

Posté : 23 oct. 2007, 20:36
par babar972
Voici le retour de l'hébergeur sur le pb :
Le problème de connexion via PDO au RAC Oracle est un problème applicatif.
Du fait que PDO soit encore à l’état expérimental, il est possible qu’il y ait un problème de compatibilité entre le RAC Oracle
et PDO. Nous n’avons pas encore trouvé de solution.

La connexion par sqlplus à la base du RAC Oracle depuis les serveurs de Front Office et Back Office fonctionne parfaitement.
Les test de redondance du RAC Oracle ont été effectués avec succès.

A partir du moment où le port 1521 est ouvert entre une machine et les deux serveurs du RAC, il est possible de s’y connecter par sqlplus
depuis cette machine. Cela fonctionne également pour l’accès par un seul des serveurs (en utilisant l’IP d’un seul serveur).

Nous effectuerons des tests supplémentaires demain.

Le message d’erreur de connexion PDO est le suivant :

Erreur de connexion sur 10.XX.XX.XX : SQLSTATE[]: pdo_oci_handle_factory: OCI_INVALID_HANDLE (/var/install/php-5.2.3/ext/pdo_oci/oci_driver.c:469)

Posté : 27 oct. 2007, 15:38
par Cyrano
Pour information, pour ceux que la question intéresse : aux dernières nouvelles, il semble que ça vienne d'une erreur de compilation chez l'hébergeur et non un problème de code ou de paramétrage. On attend d'en savoir plus de son coté.

En attendant, ceux qui se heurteraient à un soucis similaire auront toujours cette piste à explorer...

Posté : 29 oct. 2007, 09:22
par Cyrano
Problème résolu mais il y avais un petit bémol.

Après recompilation des serveurs, la connexion s'est effectuée correctement. Néanmoins, des lenteurs et/ou une partie des requêtes n'aboutissant jamais, il a fallu revoir la méthode de connexion.

Pour ceux qui auraient à résoudre le problème d'une connexion à un Cluster Oracle 10G, voici quelques références utiles :
- http://www.oracle.com/technology/produc ... ndrac.html
- http://database.in2p3.fr/TAF.html;
- https://lii.isnetne.ch/RaD/isnet57/SougSigRac_FTE.pdf

Merci à ceux qui ont tenté de nous aider de leurs idées :)

Posté : 08 mars 2009, 17:37
par ham1120
comment le problème a été resolu.

j'ai le meme prob actuellement

Posté : 08 mars 2009, 17:46
par Cyrano
comment le problème a été resolu.

j'ai le meme prob actuellement
Tu as suivi les liens que j'avais mis ??

Enfin, j'ai souligné un problème de compilation du serveur Oracle, pas de PHP.

Re: Connexion Oracle simple /vs Oracle Cluster

Posté : 21 déc. 2010, 18:05
par neolitec
Bonjour,

Je me permet de remonter ce topic parce que je rencontre exactement ce problème actuellement et c'est étonnamment le seul endroit qui en parle que j'ai pu trouver !
Version d'oracle : 10g en Cluster (RAC)
Connexion via PDO sous Linux (RedHat)

Environnement de Dev : 1 serveur Oracle
Environnement de Prod : 2 serveurs Oracle en cluster

tnsping et sqlplus fonctionnent en environnement de dev comme en prod.
Avec PDO, tout va bien en environnement de test (j'attaque un serveur unique).

Mais en prod, j'ai aléatoirement des échecs de connexion.

J'aurais voulu en savoir plus sur la résolution de ce problème (j'ai suivi les liens, en tout cas j'ai essayé ^^).


Une piste ?

Re: Connexion Oracle simple /vs Oracle Cluster

Posté : 21 déc. 2010, 18:11
par Cyrano
Le sujet a déjà plus d'un an et demi, pour ma part, je n'ai pas la mémoire aussi longue sur les détails de ce genre de problème.

Ce qui pourrait éventuellement nous rafraichir la mémoire, ce serait d'avoir des détails sur les messages d'erreurs. Si le problème est en plus aléatoire, ça ne va certes pas nous faciliter la vie pour trouver, donc les détails seront importants.

N'as-tu rien trouvé d'utile dans les liens mentionnés plus haut ?