je suis en train d'installer un ensemble d'applications qui vont se connecter à une base de données oracle via jdbc.
Je voudrais que toutes ces applis se connectent à la même base, avec le même user.
Du coup toutes les applis utilisent la même chaine de connection jdbc, et cela ne semble pas trés bien fonctionner.
En effet je m'apperçoit que je peux conencter une appli mais pas deux. Pourtant, dans mon pool de connections j'ai spécifié le nombre max de connexions à 100.
Est-ce que cela vient que j'utilise un seul user?
__________________________ Eoliennes et informatique sur freresguizmo
Par le vécu, je peux t'affirmer que l'on peut se connecter avec plusieurs applications sur la même db avec le même user et bien sur avec des applications similaires. Tu te connectes à partir du même post client ?
__________________________
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici, nous avons réuni théorie et pratique : rien ne fonctionne et personne ne sait pourquoi...
Tout ça reste à confirmer mais voila ca que j'ai appris:
cette page explique qu'oracle XE refuse des connections, ce qui est normal.
Le fichier init.ora contient un paramétre "processes" qui est fixé à 40. Ce paramétre indique un nombre maxi de connections à oracle.
Si on compte les processus internes à oracle, on dispose de 19 connections possibles (sous XE)
Quand des applications se connectent et se déconnectent rapidement, elles préviennent le processus "listener" qui gére les connections.
Mais en fait les aplis préviennent le listner immédiatement lorsqu'elles se connectent, il faut attendre que le listener fasse un "update" pour qu'il sache que des applis se sont déconnectées.
Donc quand des applis se connectent et se déconnectent rapdiement, on peut atteindre le nombre maxi de connections.
Tout ça me parrait trés bizzare... Je continue à chercher.
La solution pour corriger le problème serait d'utiliser un système de pooling de connections.
Vraiment bizzare
__________________________ Eoliennes et informatique sur freresguizmo
En fait oracle définit un nombre maximum de sessions, c'est à dire de connections simultanées.
Ce paramétre est définit dans un "pfile" .
Par défaut avec XE ce fichier se trouve ici: \app\oracle\product\10.2.0\server\config\scripts\init.ora
mais oracle utilise une version "compilée" de ce fichier: le spfile qui se trouve ici:
app\oracle\product\10.2.0\server\dbs\SPFILE.ORA
Pour augmenter le nombre ce connections simultanées il faut:
1) arréter la base
2) editer init.ora et modifier le paramétre session
3) regénérer le spfile via : create spfile from pfile='e:\oracle\app\oracle\product\10.2.0\server\config\scripts\init.orainit.ora';
4) redémarrer la base
__________________________ Eoliennes et informatique sur freresguizmo
bigguiz dit : Donc quand des applis se connectent et se déconnectent rapdiement, on peut atteindre le nombre maxi de connections.
Il n'y a pas un lease time à configurer dans le .ini d'Oracle ?
On a eu récemment le même genre de problème au boulot. Le pool de connection du serveur gardait des connections ouvertes durant un temps assez long.
__________________________
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici, nous avons réuni théorie et pratique : rien ne fonctionne et personne ne sait pourquoi...