2012-11-02 3 views
0

Je cours Oracle 11g sur Windows Server 2008R2. J'ai une application cliente (Zabbix) fonctionnant ailleurs qui essaie de s'y connecter.ora-12154 problème lors de la connexion avec le client instantané

La machine client a:

  • oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm
  • oracle-instantclient11.2-devel-11.2.0.3.0 -1.i386.rpm

En tant que tel, il n'a pas de fichiers sqlnet.ora ou tnsnames.ora. Il tente d'établir une connexion avec l'adressage direct. Avec une déclaration d'impression dans le php, je vois qu'il appelle

ociplogon(user,password,$connect); 

avec connexion étant mis à // dbhostmachine: 1521/zabbix. Donc tout semble bien là-bas.

C:\Users\mdobrini> lsnrctl services 

LSNRCTL for 64-bit Windows: Version 11.1.0.7.0 - Production on 02-NOV-2012 13:00:55 

Copyright (c) 1991, 2008, Oracle. All rights reserved. 

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbhostmachine.dddd.cccc.com)(POR 
Services Summary... 
Service "zabbix" has 1 instance(s). 
    Instance "zabbix", status READY, has 1 handler(s) for this service... 
    Handler(s): 
     "DEDICATED" established:578 refused:0 state:ready 
     LOCAL SERVER 
Service "zabbixXDB" has 1 instance(s). 
    Instance "zabbix", status READY, has 1 handler(s) for this service... 
    Handler(s): 
     "D000" established:0 refused:0 current:0 max:1022 state:ready 
     DISPATCHER <machine: dbhostmachine, pid: 6384> 
     (ADDRESS=(PROTOCOL=tcp)(HOST=dbhostmachine.dddd.cccc.com)(PORT=61396)) 
Service "zabbix_XPT" has 1 instance(s). 
    Instance "zabbix", status READY, has 1 handler(s) for this service... 
    Handler(s): 
     "DEDICATED" established:578 refused:0 state:ready 
     LOCAL SERVER 
The command completed successfully 

tentative de connexion fonctionne localement bien:

SQL*Plus: Release 11.1.0.7.0 - Production on Fri Nov 2 13:06:31 2012 

Copyright (c) 1982, 2008, Oracle. All rights reserved. 

Enter user-name: SYSTEM 
Enter password: 

Connected to: 
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production 

SQL> connect uuu/[email protected]/zabbix 
Connected. 
SQL> 

Cependant, je reçois à distance l'erreur populaire:

ociplogon(): ORA-12154: TNS:could not resolve the connect identifier specified 

La chose étrange est qu'il fonctionnait par intermittence avant. Je reçois une erreur toutes les 10 secondes dans ma demande:

30923:20121101:142237.595 [Z3001] connection to database '//dbhostmachine:1521/zabbix'  failed: [-1] ORA-12516: TNS:listener could not find available handler with matching protocol stack 
30923:20121101:142237.596 watchdog: database is down 

mais il y avait certainement des données envoyées sur le réseau, et persistait dans la db. Après avoir redémarré l'application et le serveur, je ne suis plus en mesure d'obtenir une connexion et suis sur ORA-12154

Répondre

0

ORA-12154 était causé par un problème DNS. Après avoir basculé vers l'adressage IP disparu.

L'ORA-12516 était provoquée par le nombre maximal de sessions/processus atteints sur la base de données. Après avoir ajusté cela ainsi que certains paramètres de PHP OCI8 cela a disparu aussi bien.

Questions connexes