Verwendung der 64-Bit-SQL Server-Agent Planen eines SQL Server 2005 Integration Services-Pakets

Zusammenfassung

Das folgende Szenario. Sie verwenden die 64-Bit-SQL Server-Agent Planen einer Microsoft SQL Server 2005 Integration Services (SSIS) als einen Auftragsschritt in einer 64-Bit-Umgebung ausgeführt. In diesem Szenario verwendet der 64-Bit-SQL Server-Agent das 64-Bit-DTExec.exe-Dienstprogramm immer das Paket ausführen. Einige Aufgaben unterstützen jedoch keine 64-Bit-DTExec.exe-Dienstprogramm. Daher kann das Paket nicht immer ausgeführt. In einigen Fällen, in denen das Paket ausgeführt werden kann, wird die folgende Fehlermeldung protokolliert:
Dieser Task unterstützt keine systemeigene Win64-Umgebung. Führen Sie das Paket stattdessen in 32-Bit-WOW-Umgebung.
Hinweis Diese Fehlermeldung wird nur protokolliert, wenn Sie die Protokollierung im Paket aktiviert haben.

Darüber hinaus sind einige OLE DB-Provider und einige Anbieter ADO.NET nicht in 64-Bit-Versionen verfügbar. Wenn diese Anbieter im Paket verwendet werden, treten verschiedene Verbindungsprobleme auf, bei der 64-Bit-SQL Server-Agent des Pakets Ausführung mit dem 64-Bit-DTExec.exe-Dienstprogramm.

Weitere Informationen

Das folgende Szenario. Möchten ein Paket in einer 64-Bit-Umgebung ausführen. Das Paket enthält außerdem Aufgaben, die systemeigene Win64-Umgebung unterstützen. In diesem Szenario müssen Sie die 32-Bit-Version des Dienstprogramms DTExec.exe zum Ausführen des Pakets auswählen. Jedoch bei der Anzeige der Eigenschaften -Dialogfeld oder Auftragsschritt-Eigenschaften keine Option angezeigt, mit denen Sie die 32-Bit-Version des Dienstprogramms DTExec.exe verwenden

64-Bit-SQL Server-Agent Ausführen eines Pakets mithilfe der 32-Bit-Version des Dienstprogramms DTExec.exe planen

Um 64-Bit-SQL Server-Agent Ausführen eines Pakets mithilfe der 32-Bit-Version des Dienstprogramms DTExec.exe planen müssen Sie manuell einen Auftragsschritt führen Sie das Paket erstellen. Darüber hinaus müssen Sie die 32-Bit-Version des Dienstprogramms DTExec.exe zum Ausführen des Pakets auswählen.

Wählen Sie die 32-Bit-Version des Dienstprogramms DTExec.exe zum Ausführen des Pakets müssen Sie keinen Befehlszeilenoptionen eingeben. Stattdessen müssen Sie nur den Pfad der 32-Bit-Version des Dienstprogramms DTExec.exe angeben. Gehen Sie hierzu folgendermaßen vor:
  1. Erstellen eines SQL Server-Agent-Auftrags. Gehen Sie hierzu folgendermaßen vor:
    1. Starten Sie den SQL Server-Agent-Dienst.
    2. Öffnen Sie SQL Server Management Studio und Verbindung zu einer Instanz von SQL Server 2005.
    3. Erweitern Sie SQL Server-Agentrechten Maustaste auf Aufträge, und klicken Sie dann auf Neuer Auftrag.
    4. Geben Sie im Dialogfeld Neues Projekt einen Namen für das Projekt und Besitzer des Auftrags.
  2. Erstellen Sie einen Auftragsschritt. Gehen Sie hierzu folgendermaßen vor:
    1. Klicken Sie im Dialogfeld Neues Projekt klicken Sie auf Schritteund klicken Sie auf neu.
    2. Geben Sie im Dialogfeld Neuer Auftragsschritt einen Namen für den Auftragsschritt.
    3. Wählen Sie in der Liste SQL Server Integration Services-Paket.
    4. Geben Sie auf der Registerkarte Allgemein den Speicherort des Pakets.
    5. Auf die verbleibenden Registerkarten Konfigurieren der Auftragsschrittes.
  3. Wählen Sie die 32-Bit-Version des Dienstprogramms DTExec.exe zum Ausführen des Pakets. Gehen Sie hierzu folgendermaßen vor:
    1. Wählen Sie in der Liste Typ im Dialogfeld Neuer Auftragsschritt Betriebssystem (CmdExec).
    2. Geben Sie im Feld Befehl den Pfad der 32-Bit-Version des Dienstprogramms DTExec.exe. Wenn Sie dies tun, setzen Sie den Pfad in Anführungszeichen und positionieren Sie Pfad vor dem vorhandenen Befehl.

      Hinweise
      • Die 32-Bit-Version des Dienstprogramms DTExec.exe wird im folgenden Ordner:
        Laufwerk\Programme Dateien (x86) \Microsoft SQL Server\90\DTS\Binn
      • Nachfolgend ein Beispiel für den Inhalt des Feldes Befehl nach dem Pfad hinzufügen:
        "C:\Program Files (x86)\Microsoft SQL Server\90\DTS\Binn\DTExec.exe" /FILE "C:\MyFolder\MyPackage.dtsx" /MAXCONCURRENT " -1 " /CHECKPOINTING OFF 
    3. Wählen Sie in der Liste als Proxykonto auf 32-Bit-Version des Dienstprogramms DTExec.exe. Das Proxykonto für SQL Server Integration Services-Paket-Subsystem aktiviert ist möglicherweise nicht in der Liste Ausführen als für das Teilsystem "Betriebssystem (CmdExec)".

      Hinweis Sie können das Proxykonto für das Teilsystem "Betriebssystem (CmdExec)". Gehen Sie hierzu folgendermaßen vor:
      1. In SQL Server Management Studio erweitern Sie SQL Server Agent Proxys, und erweitern Sie dann die Ausführung von SSIS-Pakets.
      2. Doppelklicken Sie auf das Proxykonto für das Betriebssystem (CmdExec) -Subsystem soll.
      3. Klicken Sie unter aktive Subsysteme Betriebssystem (CmdExec) das Kontrollkästchen.
    4. Klicken Sie auf Erweitert, und aktivieren Sie das Kontrollkästchen Include Schrittausgabe im Verlauf .


      Hinweis Führen Sie diesen Schritt nur dann, wenn die Ausgabe des Dienstprogramms DTExec.exe.exe Auftragsverlauf des SQL Server-Agent enthalten sein sollen. Diese Ausgabe können für die Diagnose beim Fehlschlagen des Auftrags.

Ausführen eines Pakets in einer 64-Bit-Umgebung

Wenn Sie ein Paket in einer 32-Bit-Umgebung ausführen, ist das Paket ausführen innerhalb der Einschränkung 4 Gigabyte (GB) des virtuellen Adressraums auf. Wenn Sie ein Paket in einer 64-Bit-Umgebung ausführen, kann das Paket mehr als 4 GB virtuellen Adressraum verwenden. Während der Verarbeitung Arbeitsspeicher können Suche Leistung und die Performance der Sortierung auf einem Computer verbessert werden, die mehr als 4 GB Arbeitsspeicher verfügt.

Hinweis Standardmäßig kann 64-Bit-Anwendung auf X 64-basierten Systemen innerhalb der Einschränkung 8 Terabyte (TB) des virtuellen Adressbereichs führen. 64-Bit-Anwendung kann innerhalb der Einschränkung 7 TB auf Itanium-basierten Systemen ausführen.

Nachteile ein Pakets in einer 64-Bit-Umgebung ausführen

  • Haben Sie ein Paket, die Skripttasks oder Skriptkomponenten enthält, müssen Sie vor dem Ausführen des Pakets in einer 64-Bit-Umgebung Skripts Skripttasks oder die Skriptkomponenten kompilieren. Standardmäßig ist der Wert der Eigenschaft PreCompile Skripttasks und Skriptkomponenten auf True festgelegt.
  • Wenn Sie ein Paket in einer 64-Bit-Umgebung ausführen, können Sie möglicherweise die Verbindung aus dem Paket auf beliebig viele Datenquellen wie aus einem Paket, das in einer 32-Bit-Umgebung ausgeführt wird. Einige.NET Framework-Datenanbieter und einige systemeigene OLE DB-Anbieter können in 64-Bit-Versionen nicht verfügbar. Microsoft OLE DB Provider für Jet ist z. B. nicht in einer 64-Bit-Version verfügbar.

    Hinweis Microsoft OLE DB Provider für Jet verbindet Microsoft Office Access-Datenbanken und Microsoft Office Excel-Arbeitsblätter.
  • Sie können kein Paket mit der DTS 2000-Paket ausführen Aufgabe in einer 64-Bit-Umgebung ausführen. Dies gilt, da SQL Server 2000 Data Transformation Services (DTS) Runtime nicht in 64-Bit-Version verfügbar ist.

Referenzen

Weitere Informationen zum Ausführen eines Pakets in einer 64-Bit-Umgebung finden Sie auf der folgenden Microsoft-Website und dann finden Sie im Abschnitt "Integrationsservices Considerations" im Whitepaper von der Website herunterladen:Weitere Informationen zum Erstellen eines CmdExec-Auftragsschrittes finden Sie auf der folgenden Website von Microsoft Developer Network (MSDN):Weitere Informationen über die Grenzen ein Pakets in einer 64-Bit-Umgebung ausführen finden Sie auf der folgenden MSDN-Website:Weitere Informationen zur Erstellung eines Proxys finden Sie auf der folgenden MSDN-Website:
Weitere Informationen zu SSIS-Paketen klicken Sie auf die folgenden Artikelnummer der Microsoft Knowledge Base:

918760 ein SSIS-Paket wird nicht ausgeführt, wenn Sie das SSIS-Paket aus einem SQL Server-Agentauftragsschritt aufrufen

Eigenschaften

Artikelnummer: 934653 – Letzte Überarbeitung: 14.01.2017 – Revision: 1

Feedback