2009-11-06 12 views
1

Je reçois cette erreur lors de l'exécution d'un package SSIS via l'agent SQL Impossible d'acquérir la connexion "ORACLE ADO.NET". La connexion peut ne pas être configurée correctement ou vous ne disposez pas des autorisations appropriées sur cette connexion.Travail de l'agent SQL - La connexion peut ne pas être configurée correctement ou vous ne disposez peut-être pas des autorisations appropriées sur cette connexion?

Lorsque je me connecte en tant qu'utilisateur SQL Agent et exécutez le package ssis directement, cela fonctionne. Lorsque je l'exécute ensuite via le travail de l'agent SQL, il échoue. J'ai beaucoup lu sur ce sujet, et il semble beaucoup de conseils sur la façon dont vous êtes connecté, la configuration des comptes proxy, etc, etc, etc, dont aucun n'a été utile. Je me connecte à une base de données Oracle avec une connectivité ADO.NET. La chaîne de connexion est la suivante (datasource, ID utilisateur et mot de passe ont été modifiés):

Source de données = DATASOURCE; ID utilisateur = ID utilisateur; Mot de passe = mot de passe; Persist Security Info = True; Unicode = True;

Je charge ceci à partir d'un paramètre de registre en utilisant la configuration du paquet. Pour vérifier que j'obtiens la chaîne correcte, je l'écris dans une table de journal temporaire. J'obtiens définitivement la chaîne dont j'ai besoin du bon paramètre de registre.

J'ai testé les informations de connexion Oracle à l'aide du développeur PL/SQL, et cela me permet de me connecter correctement. Pour autant que je sache, étant donné que j'utilise un nom d'utilisateur et un mot de passe explicites pour la connexion Oracle, peu importe à qui le pacakge SSI est exécuté. Le seul point d'échec que je puisse voir serait la lecture de l'information du registre, mais cela semble bien.

Je suis vraiment déconcerté, je dois avouer, et j'apprécierais toute aide que certains des meilleurs experts ici peuvent offrir.

Un grand merci, James

Répondre

1

Ok, suivi celui-ci après beaucoup de douleur. Cela fonctionnait correctement sur un environnement, mais pas sur un autre. J'ai donc activé Process Monitor (http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx) et exécuté un package via le travail SQL Agent, en comparant les entités système qui étaient touchées sur chaque environnement.

Sur l'environnement défaillant, au moment de l'opération de transfert en bloc, le package a tenté d'obtenir la DLL client Oracle 11, puis s'est arrêté. Je savais que cela était installé, et, de plus, le chemin de la DLL était un paramètre d'environnement système. Après une enquête plus approfondie, il a été révélé que le serveur n'avait pas été redémarré depuis l'installation du client Oracle et que le processus de l'Agent SQL Server n'avait pas été recyclé.

Oui, pouvez-vous le croire, le vieux correctif de helpdesk "Pouvez-vous redémarrer votre ordinateur?" travaillé.

Soupir!

1

Nous avons eu des problèmes à un client avec l'exécution des packages de connexion à Oracle avant stockées sur notre instance de serveur SQL. Le travail que nous avons trouvé consistait à changer la propriété du paquet, le niveau de protection, à "Ne pas sauvegarder les données sensibles" et pour des raisons de sécurité, nous avons chiffré le nom d'utilisateur et le mot de passe. Bien sûr, avant d'essayer toute la partie de chiffrement, je recommande de mettre le nom d'utilisateur et le mot de passe dans la configuration du paquet sans chiffrer les valeurs pour voir si la modification du niveau de protection est la solution à votre problème spécifique. J'espère que ça aide.

+0

Merci pour votre suggestion, Ryan. Tous mes paquets étaient par défaut de toute façon. –

Questions connexes