[Resolu] Soucis ODBC / Oracle

Bonjour,



J’ai une application qui se connecte à une base de données oracle via ODBC.

Quand je me connecte avec mon compte, la connexion s’effectue correctement, mais avec un autre compte,

il y a le message d’erreur suivant :

"Erreur : Les composants client et réseau Oracle sont introuvables.

Ces composants sont fournis par Oracle Corporation dans l’installation client d’Oracle Version 7.3.3

(ou ultérieure). Vous ne pourrez pas utiliser ce fournisseur avant d’avoir installé ces composants"




Pour info, tout ce que j’ai pu vérifier :

  • j’ai bien créé mes sources dans “system” et non “user”
  • Le client oracle installé est 9.2
  • Le compte que j’utilise existe aussi en tant que compte windows sur la machine ayant la couche Citrix.

    (c’est la grande différence par rapport aux autres utilisateurs Citrix)
  • Les droits d’accès “groupeCitrix” ont été rajoutés au répertoire contenant le client “oracle” + sur le DLL.
  • Le fichier WINDOWSsystem32msorcl32.dll, version 2.576.3959.0 a été “partagé” aussi.



    Bref, si vous avez d’autres pistes de recherche, je suis preneuse.



    Merci par avance,



    Cordialement,

    K.





    Edit: Mise en place de la fermeture tags

Sans vouloir te vexer, as tu bien installé le client Oracle en mode install

Lol, non ca ne me vexe pas.



Je ne sais pas ce que c’est que le mode “install” dont tu parles…

ce que j’ai fait, c’est installer en mode “runtime”, avec le client & sqlplus entre autres.

avant d’installer une application sur un serveur Windows en mode Terminal Server Applicatif, il faut “basculer” le serveur en mode install (change user /install) pour que TS remplace à la volée des appels fait par l’application qui pense être installée sur une machine mono user.

par exemple, en mode /install %windir% envoie %userprofile%windows alors qu’en mode normal %windir% retourne c:windows



SAUF si l’application a été compilée en mode TSAWARE, là c’est un peu plus complexe (Visual C++):

http://msdn2.microsoft.com/en-us/library/01cfys9z(VS.80).aspx



Les clients Oracle ODBC sont tout sauf TSAWARE de toute façon :slight_smile:

mais est ce que cela implique “arreter le serveur” ?

parce qu’il existe des applications qui tournent dessus, et les utilisateurs en ont besoin en journée.

Non, cela impose que tu bosse la nuit ;D



Tu dé installe ton client Oracle. Tu passe en mode install, sous dos:

change user /install

Tu installe ton client Oracle, normalement :P. Et [glow=red,2,300]AVANT DE REBOOTER[/glow] tu repasses en mode execute

change user /execute

Attention si tu reboot sans cette commande toutes les modif du mode install sont perdu.

ok, j’vais balancer ca à mon super administrateur … qui va s’amuser tout seul désormais.

Sur ce, bonne soirée, la journée de travail est sensée etre terminée :wink:



K.

Bonjour,



Après avoir discuté avec mon “superadmin”, il m’a confirmé avoir bien installé le client en mode “install” !



Donc ce n’était pas ca le probleme … ??? :’(



Nb :

Avec un autre compte “windows”, l’application fonctionne.

C’est uniquement avec un compte “non windows” qu’il y a un soucis.





K.

Heu, c’est quoi un compte non Windows du NIS, OpenLDAP … ??



Bref tu n’as pas de domaine? Tu utilise les comptes des bases SAM local des machines ?

Bonjour,


Les droits d'accès "groupeCitrix" ont été rajoutés au répertoire contenant le client "oracle" + sur le DLL.


As tu pensé à rajouter le "GroupeCitrix" dans le groupe "OraDBA" groupe local qui se créer automatiquement lors d'une install de la couche Oracle.

Bonjour,




J'ai une application qui se connecte à une base de données oracle via ODBC.
Quand je me connecte avec mon compte, la connexion s'effectue correctement, mais avec un autre compte,
il y a le message d'erreur suivant :
"Erreur : Les composants client et réseau Oracle sont introuvables.
Ces composants sont fournis par Oracle Corporation dans l'installation client d'Oracle Version 7.3.3
(ou ultérieure). Vous ne pourrez pas utiliser ce fournisseur avant d'avoir installé ces composants"



Le compte sous lequel Microsoft SQL Server s'exécute sur le serveur de distribution doit avoir des autorisations en lecture et en exécution sur le répertoire (et tous les sous-répertoires) où le logiciel réseau client Oracle est installé. Si les autorisations ne sont pas accordées ou si les composants du client Oracle ne sont pas installés correctement, vous recevez le message d'erreur suivant :

« Échec de la connexion au serveur avec [Fournisseur Microsoft OLE DB pour Oracle]. Les composants client et réseau Oracle sont introuvables. Ces composants sont fournis par Oracle Corporation dans l'installation client d'Oracle Version 7.3.3 (ou ultérieure). Vous ne pourrez pas utiliser ce fournisseur avant d'avoir installé ces composants. »

Si un client Oracle approprié a été installé sur le serveur de distribution, vérifiez que SQL Server a été arrêté puis redémarré une fois le client installé. Cette opération permet à SQL Server de reconnaître les composants du client.

Si vous avez vérifié que ces autorisations sont accordées et que ces composants sont installés correctement, mais que cette erreur persiste, vérifiez que les paramètres du Registre pour HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTCMTxOCI sont corrects :

* Pour Oracle 10g, les paramètres corrects sont
o OracleOciLib = oci.dll
o OracleSqlLib = orasql10.dll
o OracleXaLib = oraclient10.dll
* Pour Oracle 9i, les paramètres corrects sont
o OracleOciLib = oci.dll
o OracleSqlLib = orasql9.dll
o OracleXaLib = oraclient9.dll



As tu fait ceci?
"frederichuet" wrote:
* Pour Oracle 9i, les paramètres corrects sont
o OracleOciLib = oci.dll
o OracleSqlLib = orasql9.dll
o OracleXaLib = oraclient9.dll[/color]

Bizarrement, c'était la version "8" qui était dans la base de registre ...
Je modifie ca ... par contre, faut il redémarrer le serveur ?

Pour tout ce qui concerne “HKLM” la réponse est OUI

Bizarrement, c'était la version "8" qui était dans la base de registre ...
Je modifie ca ... par contre, faut il redémarrer le serveur ?


:o :o :o :o :o :o :o :o :o

Eux Dis moi ton "superadmin" a bien installé le client oracle 9 ou le client oracle 8?
"frederichuet" wrote:
Eux Dis moi ton "superadmin" a bien installé le client oracle 9 ou le client oracle 8?

En fait, la version propose d'utiliser des bases 8 & ultérieures, et non directement des bases 9, d'où l'ajout des paramètres 8 dans la base de registre.

Sinon, j'ai fait d'autres tests : j'ai créé un utilisateur ayant des simples droits "User" et la kaboum ! ca ne fonctionne pas. ::)
Encore une nouvelle piste à étudier ...

As-tu réalisé les actions qu’on ta conseillé de faire…???

tout, sauf le

As tu pensé à rajouter le "GroupeCitrix" dans le groupe "OraDBA" groupe local qui se créer automatiquement lors d'une install de la couche Oracle. ..


J'ai besoin de plus d'infos, car je ne maitrise plus rien du tout la ..
en fait, ca dépasse totalement mes compétences, je ne suis à l'origine qu'une simple développeuse (sisi ca se dit)
qui aime bien que ses applications fonctionnent du 1er coup ! :P

Edit : aucun groupe ORADBa ne s'est créé dans mes groupes locaux (gestion de l'ordinateur / utiliasteurs et goupes locaux / groupes)
Edit : aucun groupe ORADBa ne s'est créé dans mes groupes locaux (gestion de l'ordinateur / utiliasteurs et goupes locaux / groupes)


effectivement erreur de ma part... :-[ :-[

Il apparait seulement lorsque tu installe Oracle en mode serveur.

Et un Filemon UN !

tu utilises NTLM avec un client ODBC Oracle ??? j’ai jamais vu cela…



j’ai tjs utilisé les clients oracle ODBC avec les users créés sur la DB oracle…

qui a les droits CONNECT et RESOURCE sur la DB ??