IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

PDO_oci 8 / 11


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Expert sécurité informatique
    Inscrit en
    Avril 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Expert sécurité informatique

    Informations forums :
    Inscription : Avril 2010
    Messages : 79
    Par défaut PDO_oci 8 / 11
    Bonjour,


    Je vous explique mon souci, et j'espère que celui-ci sera résolu assez vite étant donné l'urgence

    Je viens de migrer la base de données Oracle 9i vers 11GR2 non sans difficultés, c'était horrible, sur un serveur 2008 R2 x64.

    J'ai installé le client avec les fonctionnalités administrateur (incluant l'instant client)

    Je tente une connexion avec Navicat via le oci 11g client fraîchement installé, niet.
    Je tente une connexion avec Navicat via le oci 11g bdd installé, niet.
    Je tente une connexion avec Navicat via le oci 10g fourni par navicat, niet.

    Je tente une connexion en spécifiant une partie des changements suivants: Lien
    - insert du chemin vers oci.dll dans la variable path (celui du client 11g fraichement installé)
    - insert TNS_ADMIN vers le même chemin (j'ai copié le fichier tnsnames.ora qui était dans la bdd)
    - connexion avec le 10g => ok !


    A mon avis j'ai dû rater quelque chose à ce niveau, normalement c'est censé fonctionner sans accroc connaissant Oracle, surtout sur une version 11G R2 !




    Et même ma page php (sur wamp comme avant) qui initie une connexion vers oracle via pdo oci 8 ou 8_11g ne veut pas fonctionner avec cette erreur:

    ( ! ) Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S02]: pdo_oci_handle_factory: ORA-12154: TNS : l'identificateur de connexion indiqué n'a pas pu être résolu (ext\pdo_oci\oci_driver.c:579) in C:\wamp\www\register\include\config.php on line 10
    Call Stack
    # Time Memory Function Location
    1 0.0005 708600 {main}( ) ..\index.php:0
    2 0.0008 723624 require_once( 'C:\wamp\www\register\include\config.php' ) ..\index.php:4
    3 0.0008 724968 PDO->__construct( ) ..\config.php:10

    Bref je pense fortement que c'est dû à l'instant client, et j'aimerais bien pouvoir faire fonctionner celui du 11G R2 que j'ai installé sans avoir à trop bidouiller comme j'ai fait.


    Je vous tiens au courant, ce truc me tient à cœur.
    Quelqu'un aurait une idée de démarche ? ...

  2. #2
    Membre actif
    Homme Profil pro
    Expert sécurité informatique
    Inscrit en
    Avril 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Expert sécurité informatique

    Informations forums :
    Inscription : Avril 2010
    Messages : 79
    Par défaut
    En fait je suis quasiment certain que le souci vient du TNS, mais pourtant la connexion Navicat avec son propre oci.dll qui est fourni fonctionne à la fois en TNS et en basic.


    Les oci.dll de la database et client ne fonctionnent pas.

    Donc la connexion ne se fait pas, à moins que la méthode de connexion diffère et que le code ne corresponde plus à une connexion à 11G R2 ?


    Voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $conn = new PDO("oci:dbname=SID",db_username,db_password);
    après c'est suivi de ->exec pour la requête.



    Quelques information supplémentaires:
    Le sql plus de la bdd fonctionne sans souci au niveau connexion, mais celui installé par le client 11G R2 semble avoir un problème.

    Erreur:
    ORA-12560: TNS : erreur d'adaptateur de protocole

  3. #3
    Membre actif
    Homme Profil pro
    Expert sécurité informatique
    Inscrit en
    Avril 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Expert sécurité informatique

    Informations forums :
    Inscription : Avril 2010
    Messages : 79
    Par défaut
    Problème de connexion Oracle réglé en partie.
    Le code de connexion diffère entre la version 9i et 11G R2.

    Je suis bon pour revoir toute la page de connexion, le bon code est visible ici même: http://st-curriculum.oracle.com/obe/..._db/php_db.htm



    Par contre le problème persiste en ce qui concerne le SQL Plus du client 11G R2 que j'ai installé séparément de la BDD.
    Peut-être qu'il y en avait pas vraiment besoin ?


    Quoi qu'il en soit les oci.dll de la bdd 11G sont casse-couilles avec Navicat, il n'y a que le 10G qui fonctionne. (fourni par Navicat)

Discussions similaires

  1. [ZF 1.10] Se connecter en tant que SYSDBA en utilisant Zend_Db avec Oracle (PDO_OCI)
    Par bpdelavega dans le forum Zend Framework
    Réponses: 1
    Dernier message: 24/02/2011, 11h58
  2. [PDO] Problème d'installation PDO_OCI
    Par merzhin dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 26/10/2007, 10h42
  3. [Oracle] Comment lire les CLOB avec PDO_OCI ?
    Par sloft dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/05/2007, 10h36
  4. [PDO] fetchall et pdo_oci
    Par Rakken dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 26/04/2007, 09h52
  5. Erreur activation oci8.dll ou pdo_oci.dllsur PHP 5
    Par san--antonio dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 19/07/2006, 14h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo