SSIS: version der ODBC-Quelle ist nicht kompatibel mit dieser version des Datenflusses
Ich bin mit Visual Studio 2015 zu erstellen eine einfache SSIS-Paket. Die Datenquelle eine DB2-Datenbank, und ich bin über einen ODBC-Treiber auf meine workstation zu verbinden, um DB2. Das Ziel ist SQL Server 2014.
Des Pakets feines lokal, aber immer wenn ich ihn ausführen auf dem server, ich habe Probleme mit der ODBC-Datenquelle. Die Treiber auf dem server ist der exakt gleiche mit dem exakt gleichen Namen wie die auf meiner workstation.
Bekommen das Paket in den server, ich habe importiert, die die dtsx-Datei in SSIS, die in Gespeicherten Pakete. Ich habe auch versucht das Projekt bereitstellen, um die Integration von Service-Katalog, aber ich bekomme einer dieser Fehler im Zusammenhang mit der ODBC-Quelle, wenn Sie so tun --
The version of ODBC File Source, clsid {xxx} is not compatible with this version of the Data Flow.
The component is missing, not registered, not upgradeable, or missing required interfaces. The contact information for this component is "ODBC Source;Connector for Open Database Connectivity (ODBC) by Attunity; Attunity Ltd.; All Rights Reserved; http://www.attunity.com
Habe ich auch versucht, mit einer Datei-basierten ODBC-Datenquelle anstelle eines Systems mit, dass die Datei in einem freigegebenen Ordner auf dem server. Wieder, es läuft gut, im VS, aber nicht auf dem server.
Habe ich mir angeschaut, die dtsx-Datei (xml-basiert) und ich vermute, dass es einen Konflikt mit der DTSID für den ODBC-Treiber. Ich bin mir nicht sicher, wie das funktioniert, aber es scheint so, dass die ID eindeutig für jeden computer und das SSIS-wird immer versucht die Arbeitsstation DTSID auf dem server.
Ich bin ein bisschen neu für SSIS und Visual Studio, so dass ich bin der Hoffnung, ich nehme an, es ist eine einfache Möglichkeit zum ausführen von Paketen entwickelt, die auf einer workstation auf den server, ohne diese Hänger. Ich kann einfach nichts finden, was speziell auf dieses problem überall.
Haben wir nicht VS oder SSDT auf dem server installiert.
EDIT: ich habe einen zweiten Satz in der 2. oben genannte Fehlermeldung. Es bezieht sich ein Anschluss bereitgestellt von Attunity, das ist etwas, was ich nicht verstehe. Der ODBC-Treiber auf dem system installiert ist, aus den Daten Direkt. Die CLSID zurückgegeben, die in der Fehlermeldung ist auch im Zusammenhang mit einem Attunity-connector in der Registrierung des Servers.
Gibt es keinen ODBC-Treiber von Attunity zeigt sich in entweder der ODBC-Manager, so ist es möglich, diese sind irgendwie Teil einer Standard-Installation oder installiert wurden, wenn der server verwendet, um SSDT und VS installiert, die direkt auf Sie und wurden nie deinstalliert. Oder noch etwas anderes?
es gibt verschiedene Mitteil. 1) " Die version des ODBC-Datei-Quelle, clsid {xxx} ist nicht kompatibel mit dieser version werden die Daten Fließen.' 2) 'Die Komponente fehlt, nicht registriert, nicht aktualisierbar, oder es fehlen erforderliche Schnittstellen.'
Die ich getestet habe die Verbindung auf dem server und es funktioniert, aber eben nicht mit dem Paket habe ich erstellt, die auf der Arbeitsstation.
Ich bin Wetten auf eine 32-bit vs 64-bit-Problem, wie schon angedeutet, in diesem Artikel.
ich muss zu geben, dass ein Schuss, wie es Sinn macht.
InformationsquelleAutor Tod Meinke | 2016-12-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich dieses Problem behoben durch ändern der Deployment Target Version der Integration Services-Projekt in VS in meinem Fall von SQL Server 2017 zu SQL Server-2016 (Ziel-SQL-version). Hoffe, das hilft. Alte quesition, aber kam zuerst in google, wenn ich habe versucht, mein problem zu lösen.
In der Visual Studio-Menü Projekt-->Eigenschaften, oder nur der rechten Maustaste auf den Projektnamen im Projektmappen-Explorer und wählen Sie "Eigenschaften". Es sollte die erste option in den Allgemeinen properies-Kategorie mit dem Namen "TargetServerVersion".
InformationsquelleAutor Yanek
VS oder SSDT standardmäßig verwendet 32-bit-Treiber, so überprüfen es besteht die Möglichkeit, wenn Sie ausführen für 32-bit. Oder installieren Sie die 32-bit-und 64-bit-Treiber und erstellen von ODBC mit dem gleichen Namen.
Dies ist, was ich tun in der Regel für ODBC-verbindungen in SSIS -- Verbindung erstellen in der sowohl 32-bit und 64-bit.
So erstellen Sie eine mit
C:\Windows\SysWOW64\odbcad32.exe
(32-bit)und eine mit
C:\Windows\System32\odbcad32.exe
(64-bit).InformationsquelleAutor Aashish Jain
Ich hatte das gleiche problem bei der Ausführung von mein Paket im SQL Server Agent. Ich habe es behoben, indem Sie die Optionen für die Ausführung "Verwenden Sie 32-Bit Runtime" - flag im Schritt agent. Fuhr mich Nüsse für ein paar Tage, hoffe das hilft.
InformationsquelleAutor Heather K
überprüfen Sie die version Ihrer Lösung vs SQL version, wo Sie sind, bereitstellen. Ich hatte dieses Thema und passende Versionen das problem behoben. Meine Lösung war 2017, aber die SQL-box war 2016. Ich hatte zu ändern, die Lösung bis 2016. prost!
InformationsquelleAutor user5880801
In meiner situation, ich wurde mit diesem Fehler und ich wechselte mit der 32-bit-version. Mein Erster test gearbeitet, dann habe ich bereitgestellt mit einem Projekt arbeitete ich mit und ich habe diesen Fehler wieder, obwohl ich Sie gewechselt hatte-Ausführung Optionen "Verwenden Sie 32-Bit Runtime" - flag.
Es endete, ich hatte Probleme mit meinem ODBC-Datenquelle. Ich war mit IBM-Informix-Treiber, und es hatte ein Problem mit dem ausgewählten Gebietsschema. Ich habe es geändert um den server zu verwenden, die spezifischen lokalen und getestet Ihre Verbindung. Dass dann gearbeitet und meine SSIS-Paket arbeitete auf dem server.
InformationsquelleAutor Paul Hegel