Ich arbeite an einem Paket, für das eine Transaktion erforderlich ist, erhalte jedoch derzeit die folgende Fehlermeldung:
SSIS package "CATS-Package.dtsx" starting.
Information: 0x4004300A at Data Flow Task, SSIS.Pipeline: Validation phase is beginning.
Information: 0x4001100A at CATS-Package: Starting distributed transaction for this container.
Error: 0xC001401A at CATS-Package: The SSIS Runtime has failed to start the distributed transaction due to error 0x8004D01B "The Transaction Manager is not available.". The DTC transaction failed to start. This could occur because the MSDTC Service is not running.
SSIS package "CATS-Package.dtsx" finished: Failure.
Folgendes weiß ich bisher:
- 2012 Paket
- Ich bin in der Paketbereitstellung ausgeführt
- Die TransactionOption-Eigenschaft wird auf Erforderlich festgelegt
- Ausführung gegen eine 2008 R2-Instanz
- Ich kann eine verteilte Transaktion manuell auf der Instanz erstellen und gemäß der Ereignisanzeige, die MSDTC ausführt.
- MSDTC verfügt über die folgenden Einstellungen
Kann jemand in eine Richtung zeigen, um zusätzliche Informationen zu finden.
Bearbeiten: Einer der Schritte, die ich gelesen habe, lautete, DTC auf dem lokalen Computer auszuführen, auf dem das Paket ausgeführt wird, sowie auf dem Server, auf dem sich die Instanz befindet. Als ich das gemacht habe, habe ich einen neuen Fehler bekommen:
Information: 0x4001100A at CATS-Package: Starting distributed transaction for this container.
Error: 0xC001402C at CATS-Package, Connection manager "connectionName": The SSIS Runtime has failed to enlist the OLE DB connection in a distributed transaction with error 0x8004D024 "The transaction manager has disabled its support for remote/network transactions.".
Error: 0xC0202009 at CATS-Package, Connection manager "connectionName": SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x8004D024.
Error: 0xC00291EC at Execute SQL Task - Max Product ID, Execute SQL Task: Failed to acquire connection "connectionName". Connection may not be configured correctly or you may not have the right permissions on this connection.
Mit dem wichtigen Teil The transaction manager has disabled its support for remote/network transactions.
Bin ich etwas in den Berechtigungen fehlt? Hinweis: das Allow Remote Clients
wurde auch geprüft.
Ich habe gesehen, wie MSDTC Ping erwähnt wurde (auch in den Kommentaren unten), aber als ich es mir ansah, war ich mir nicht ganz sicher, was ich damit anfangen sollte.
quelle
Antworten:
Ich habe das Problem gelöst. Ich hatte an mehreren Stellen gelesen, dass sowohl auf dem Quellcomputer als auch auf dem Ziel ein DTC gestartet werden muss. An meiner Stelle ist also sowohl meine Workstation als auch der Server, auf dem sich die Instanz befindet.
Nachdem ich MSDTC eingeschaltet hatte, erhielt ich einen neuen Fehler:
Mit dem wichtigen Teil ist
The transaction manager has disabled its support for remote/network transactions.
Dort habe ich zusätzliche Nachforschungen angestellt und festgestellt, dass ich meinen lokalen DTC nicht für den Netzwerkzugriff usw. konfiguriert habe. Nachdem ich ihn für den Netzwerk-DTC-Zugriff konfiguriert hatte, funktionierte alles reibungslos.
Ich bin nicht sicher, ob dies die Mindestberechtigung ist, die für die lokale Verbindung erforderlich ist, aber es scheint zu sein.
quelle