Freigeben über


dtexec (Dienstprogramm)

Das Befehlszeilen-Dienstprogramm dtexec dient zum Konfigurieren und Ausführen von SQL ServerIntegration Services-Paketen. Das Dienstprogramm dtexec ermöglicht den Zugriff auf alle Features der Paketkonfiguration und -ausführung, z. B. auf Verbindungen, Eigenschaften, Variablen und Statusanzeigen. Das Dienstprogramm dtexec ermöglicht das Laden von Paketen aus drei Quellen: einer MicrosoftSQL Server-Datenbank, dem SSIS-Dienst und dem Dateisystem.

HinweisHinweis

Wenn Sie die in SQL Server 2008 enthaltene Version des Dienstprogramms dtexec verwenden, um ein SQL Server 2005 Integration Services (SSIS)-Paket auszuführen, aktualisiert Integration Services das Paket vorübergehend auf SQL Server 2008 Integration Services (SSIS). Sie können das Dienstprogramm dtexec jedoch nicht verwenden, um diese aktualisierten Änderungen zu speichern. Weitere Informationen zum dauerhaften Aktualisieren eines SQL Server 2005-Pakets auf SQL Server 2008 finden Sie unter Aktualisieren von Integration Services-Paketen.

Überlegungen zur Installation auf 64-Bit-Computern

Auf einem 64-Bit-Computer installiert Integration Services eine 64-Bit-Version des Dienstprogramms dtexec (dtexec.exe). Wenn Sie bestimmte Pakete im 32-Bit-Modus ausführen möchten, müssen Sie die 32-Bit-Version des dtexec-Dienstprogramms installieren. Wählen Sie zum Installieren der 32-Bit-Version des dtexec-Dienstprogramms während des Setups entweder Clienttools oder Business Intelligence Development Studio.

Standardmäßig wird auf einem 64-Bit-Computer, auf dem sowohl die 64-Bit-Version als auch die 32-Bit-Version eines Integration Services-Befehlszeilenprogramms installiert ist, die 32-Bit-Version an der Eingabeaufforderung ausgeführt. Die 32-Bit-Version wird ausgeführt, da der Verzeichnispfad für die 32-Bit-Version in der PATH-Umgebungsvariablen vor dem Verzeichnispfad für die 64-Bit-Version aufgeführt wird. (Typischerweise ist der 32-Bit-Verzeichnispfad <Laufwerk>:\Programme(x86)\Microsoft SQL Server\100\DTS\Binn, während der 64-Bit-Verzeichnispfad <Laufwerk>:\Programme\Microsoft SQL Server\100\DTS\Binn lautet.)

HinweisHinweis

Wenn Sie das Dienstprogramm mithilfe des SQL Server-Agents ausführen, verwendet dieser automatisch die 64-Bit-Version des Dienstprogramms. Der SQL Server-Agent sucht die richtige ausführbare Datei für das Dienstprogramm in der Registrierung und nicht in der PATH-Umgebungsvariablen.

Wenn Sie sicherstellen möchten, dass die 64-Bit-Version des Dienstprogramms an der Eingabeaufforderung ausgeführt wird, können Sie einen der folgenden Schritte ausführen:

  • Öffnen Sie eine Eingabeaufforderung, wechseln Sie in das Verzeichnis mit der 64-Bit-Version des Dienstprogramms (<Laufwerk>:\Programme\Microsoft SQL Server\100\DTS\Binn), und führen Sie dann das Dienstprogramm aus diesem Verzeichnis aus.

  • Führen Sie an der Eingabeaufforderung das Dienstprogramm aus, indem Sie den vollständigen Pfad (<Laufwerk>:\Programme\Microsoft SQL Server\100\DTS\Binn) der 64-Bit-Version des Dienstprogramms eingeben.

  • Ändern Sie die Reihenfolge der Pfade in der PATH-Umgebungsvariablen dauerhaft, indem Sie den 64-Bit-Pfad (<Laufwerk>:\Programme\Microsoft SQL Server\100\DTS\Binn) in der Variablen vor dem 32-Bit-Pfad (<Laufwerk>:\ Programme(x86)\Microsoft SQL Server\100\DTS\Binn) platzieren.

Ausführungsphasen

Bei der Ausführung des Dienstprogramms werden vier Phasen durchlaufen. Es handelt sich um die folgenden Phasen:

  1. Befehlsermittlungsphase: Die Eingabeaufforderung liest die Liste der Optionen und Argumente, die angegeben wurden. Alle weiteren Phasen werden übersprungen, wenn eine /? oder /HILFE-Option festgestellt wird.

  2. Paketladephase: Das durch die Option /SQL, /FILE oder /DTS angegebene Paket wird geladen.

  3. Konfigurationsphase: Die Optionen werden in der folgenden Reihenfolge verarbeitet:

    • Optionen, die Paketflags, -variablen und -eigenschaften festlegen.

    • Optionen, die die Paketversion und den Paketbuild überprüfen.

    • Optionen, die das Laufzeitverhalten des Dienstprogramms konfigurieren, z. B. die Berichterstellung.

  4. Überprüfungs- und Ausführungsphase: Das Paket wird ausgeführt bzw. ohne Ausführung überprüft, falls die Option /VALIDATE angegeben wurde.

Exitcodes, die von dtexec zurückgegeben werden

Wenn ein Paket ausgeführt wird, kann dtexec einen Exitcode zurückgeben. Der Exitcode wird dazu verwendet, die ERRORLEVEL-Variable aufzufüllen, deren Wert anschließend in bedingten Anweisungen oder in einer Verzweigungslogik innerhalb einer Batchdatei getestet werden kann. In der folgenden Tabelle sind die Werte aufgeführt, die dtexec beim Beenden festlegen kann.

Wert

Beschreibung

0

Das Paket wurde erfolgreich ausgeführt.

1

Bei der Paketausführung ist ein Fehler aufgetreten.

3

Die Paketausführung wurde vom Benutzer abgebrochen.

4

Das Dienstprogramm konnte das angeforderte Paket nicht finden. Das Paket konnte nicht gefunden werden.

5

Das Dienstprogramm konnte das angeforderte Paket nicht laden. Das Paket konnte nicht geladen werden.

6

Das Dienstprogramm hat einen internen Fehler aufgrund syntaktischer oder semantischer Fehler in der Befehlszeile erkannt.

Syntaxregeln für das Dienstprogramm

Alle Optionen müssen mit einem Schrägstrich (/) oder einem Minuszeichen (-) beginnen. Die hier aufgeführten Optionen beginnen mit einem Schrägstrich (/); dieser kann jedoch durch ein Minuszeichen (-) ersetzt werden.

Enthält ein Argument ein Leerzeichen, muss es in Anführungszeichen eingeschlossen werden. Wenn das Argument nicht in Anführungszeichen eingeschlossen ist, darf es keine Leerzeichen enthalten.

Doppelte Anführungszeichen innerhalb von Zeichenfolgen, die selbst in Anführungszeichen eingeschlossen sind, stellen einzelne Anführungszeichen mit Escapezeichen dar.

Bei Optionen und Argumenten wird die Groß- und Kleinschreibung nicht beachtet; ausgenommen hiervon sind Kennwörter.

Aufrufen von dtexec mit xp_cmdshell

Sie können dtexec über die Eingabeaufforderung xp_cmdshell ausführen. Das folgende Beispiel zeigt, wie das Paket namens UpsertData.dtsx ausgeführt und sein Rückgabecode ignoriert wird:

EXEC xp_cmdshell 'dtexec /f "C:\UpsertData.dtsx"'

Das folgende Beispiel zeigt, wie dasselbe Paket ausgeführt und sein Rückgabecode aufgezeichnet wird:

DECLARE @returncode int
EXEC @returncode = xp_cmdshell 'dtexec /f "C:\UpsertData.dtsx"'
Wichtiger HinweisWichtig

In MicrosoftSQL Server ist die Option xp_cmdshell standardmäßig bei neuen Installationen deaktiviert. Die Option kann durch Ausführen der gespeicherten Systemprozedur sp_configure aktiviert werden. Weitere Informationen finden Sie unter xp_cmdshell (Option).

Syntax

dtexec /option [value] [/option [value]]...

Parameter

Informationen zu Entsprechungen zwischen den Befehlszeilenoptionen, die mit dem SQL Server 2000-Dienstprogramm dtsrun verwendet werden, und den Befehlszeilenoptionen, die mit dem SQL Server-Dienstprogramm dtexec verwendet werden, finden Sie unter Zuordnen von dtsrun-Optionen zu dtexec-Optionen.

Option

Beschreibung

/?[option_name]

(Optional). Zeigt die Befehlszeilenoptionen oder die Hilfe zu der in option_name angegebenen Option an und beendet dann das Dienstprogramm.

Wenn Sie ein Argument für option_name angeben, startet dtexec die SQL Server-Onlinedokumentation und zeigt das Thema dtexec (Dienstprogramm) an.

/CheckF[ile]filespec

(Optional). Legt den Pfad und die Datei, der bzw. die in filespec angegeben ist, als Wert für die CheckpointFileName-Eigenschaft des Pakets fest. Diese Datei wird beim erneuten Starten des Pakets verwendet. Wird diese Option angegeben, ohne einen Wert für den Dateinamen bereitzustellen, wird für die CheckpointFileName-Eigenschaft des Pakets eine leere Zeichenfolge festgelegt. Wenn diese Option nicht angegeben wird, werden die Werte im Paket beibehalten.

/CheckP[ointing]{on\off}

(Optional). Legt einen Wert fest, der bestimmt, ob das Paket während der Paketausführung Prüfpunkte verwendet. Der Wert on gibt an, dass das fehlerhafte Paket erneut ausgeführt wird. Wenn das fehlerhafte Paket erneut ausgeführt wird, verwendet das Laufzeitmodul die Prüfpunktdatei, um das Paket von dem Punkt an, an dem der Fehler aufgetreten ist, erneut auszuführen.

Der Standardwert ist "on", wenn die Option ohne Angabe eines Wertes deklariert wird. Die Paketausführung erzeugt einen Fehler, wenn der Wert auf "on" festgelegt wurde und die Prüfpunktdatei nicht gefunden werden kann. Wenn diese Option nicht angegeben wird, wird der im Paket festgelegte Wert beibehalten. Weitere Informationen finden Sie unter Verwenden von Prüfpunkten in Paketen.

Das Festlegen der Prüfpunktausführungsoption /CheckPointing von dtexec auf 'on' entspricht der SaveCheckpoints-Eigenschaft des Pakets 'True' oder der CheckpointUsage-Eigenschaft 'Immer'.

/Com[mandFile]filespec

(Optional). Gibt an, dass während der Befehlsermittlungsphase des Dienstprogramms die in filespec angegebene Datei geöffnet wird und Optionen aus der Datei ausgelesen werden, bis ein EOF-Zeichen in der Datei gefunden wird. filespec ist eine Textdatei, die zusätzliche dtexec-Befehlsoptionen enthält. Mit dem filespec-Argument wird der Dateiname und der Pfad der Befehlsdatei angegeben, die mit dem Ausführen des Pakets verknüpft werden soll.

/Conf[igFile]filespec

(Optional). Gibt eine Konfigurationsdatei an, aus der Werte extrahiert werden sollen. Mithilfe dieser Option können Sie eine Laufzeitkonfiguration festlegen, die sich von der Konfiguration unterscheidet, die zur Entwurfszeit für das Paket angegeben wurde. Sie können abweichende Konfigurationseinstellungen in einer XML-Konfigurationsdatei speichern und die Einstellungen dann mithilfe der Option /ConfigFile vor der Paketausführung laden.

Sie können die Option /ConfigFile verwenden, um zur Laufzeit zusätzliche Konfigurationen zu laden, die Sie zur Entwurfszeit nicht angegeben haben. Sie können die Option /ConfigFile jedoch nicht verwenden, um konfigurierte Werte zu ersetzen, die Sie auch zur Entwurfszeit angegeben haben. Weitere Informationen zur Anwendung von Paketkonfigurationen finden Sie unter Paketkonfigurationen und Verhaltensänderungen von Integration Services-Features in SQL Server 2008.

/Conn[ection]id_or_name;connection_string [[;id_or_name;connection_string]…]

(Optional). Gibt an, dass sich der Verbindungs-Manager mit dem angegebenen Namen oder GUID im Paket befindet. Eine Verbindungszeichenfolge wird ebenfalls angegeben.

Wenn diese Option verwendet wird, müssen beide Parameter angegeben werden: Der Name oder GUID des Verbindungs-Managers muss mit dem id_or_name-Argument bereitgestellt werden, und mit dem connection_string-Argument muss eine gültige Verbindungszeichenfolge angegeben werden. Weitere Informationen finden Sie unter SQL Server Integration Services-Verbindungen.

Sie können zur Laufzeit die Option /Connection verwenden, um Paketkonfigurationen von einem anderen Speicherort als dem zur Entwurfszeit angegebenen Speicherort zu laden. Die Werte dieser Konfigurationen ersetzen dann die Werte, die ursprünglich angegeben wurden. Sie können die Option /Connection jedoch nur für Konfigurationen verwenden, die einen Verbindungs-Manager verwenden (z. B. SQL Server-Konfigurationen). Weitere Informationen zur Anwendung von Paketkonfigurationen finden Sie unter Paketkonfigurationen und Verhaltensänderungen von Integration Services-Features in SQL Server 2008.

/Cons[oleLog] [[displayoptions];[list_options;src_name_or_guid]...]

(Optional). Zeigt während der Paketausführung bestimmte Protokolleinträge an der Konsole an. Wenn die Option nicht angegeben wird, werden keine Protokolleinträge an der Konsole angezeigt. Wenn die Option ohne Parameter zur Begrenzung der Anzeige angegeben wird, werden alle Protokolleinträge angezeigt. Wenn Sie die an der Konsole angezeigten Einträge begrenzen möchten, können Sie die anzuzeigenden Spalten mithilfe des displayoptions-Parameters angeben und die Protokolleintragstypen mithilfe des list_options-Parameters begrenzen.

Mit dem displayoptions-Parameter werden folgende Werte angegeben:

  • N (Name)

  • C (Computer)

  • O (Operator)

  • S (Name der Quelle)

  • G (GUID der Quelle)

  • X (Ausführungs-GUID)

  • M (Meldung)

  • T (Start- und Beendigungszeit)

Mit dem list_options-Parameter werden folgende Werte angegeben:

  • I - Gibt die Inklusionsliste an. Es werden nur Protokolleinträge für die angegebenen Quellnamen oder -GUIDs erfasst.

  • E - Gibt die Ausschlussliste an. Für die angegebenen Quellnamen oder -GUIDs werden keine Protokolleinträge erfasst.

  • Bei dem src_name_or_guid-Parameter, der für die Inklusions- oder Ausschlussliste verwendet wird, handelt es sich um einen Ereignisnamen, den Namen einer Quelle oder den GUID einer Quelle.

Wenn Sie die Option /ConsoleLog mehrmals in einer Befehlszeile verwenden, werden die einzelnen Optionen folgendermaßen verarbeitet:

  • Die Reihenfolge der Optionen spielt keine Rolle.

  • Wenn in der Befehlszeile keine Inklusionsliste angegeben wurde, gelten die Ausschlusslisten für alle Protokolleintragstypen.

  • Wenn in der Befehlszeile Inklusionslisten angegeben wurden, werden die Ausschlusslisten auf die Gesamtheit aller Inklusionslisten angewendet.

Im Abschnitt Hinweise finden Sie mehrere Beispiele für die Verwendung der Option /ConsoleLog.

/D[ts]package_path

(Optional). Lädt ein Paket aus dem SSIS-Paketspeicher. Mit dem package_path-Argument wird der relative Pfad des SSIS-Pakets, der am Stammverzeichnis des SSIS-Paketspeichers beginnt, sowie der Name des SSIS-Pakets angegeben. Enthält der im package_path-Argument angegebene Pfad- oder Dateiname ein Leerzeichen, muss das package_path-Argument in Anführungszeichen gesetzt werden.

Die Option /DTS kann nicht zusammen mit der Option /File oder /SQL verwendet werden. Werden mehrere Optionen angegeben, erzeugt dtexec einen Fehler.

/De[crypt] password

(Optional). Legt das Entschlüsselungskennwort fest, das beim Laden eines Pakets mit Kennwortverschlüsselung verwendet wird.

/Dumperror code

(Optional) Erstellt die Debugdumpdateien MDMP und TMP, wenn bei der Ausführung des Pakets ein oder mehrere angegebene Ereignisse auftreten. Das Argument error code gibt den Typ des Ereigniscodes – Fehler, Warnung oder Information – an, der auslöst, dass das System die Debugdumpdateien erstellt. Trennen Sie die error code-Argumente durch ein Semikolon (;), um mehrere Ereigniscodes anzugeben.

In der Standardeinstellung speichert Integration Services die Debugdumpdateien im Ordner <Laufwerk>:\Programme\Microsoft SQL Server\100\Shared\ErrorDumps.

HinweisHinweis
Debugdumpdateien können vertrauliche Informationen enthalten. Verwenden Sie eine Zugriffssteuerungsliste, um den Zugriff auf die Dateien einzuschränken oder die Dateien in einen Ordner mit eingeschränktem Zugriff zu kopieren. Bevor Sie Ihre Debugdateien beispielsweise an Microsoft Support Services senden, wird empfohlen, vertrauliche Informationen zu entfernen.

Fügen Sie dem Registrierungsschlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS einen DumpOnCodes REG_SZ-Wert hinzu, um diese Option auf alle vom Dienstprogramm dtexec ausgeführten Pakete anzuwenden. Der Datenwert in DumpOnCodes gibt den oder die Fehlercodes an, die auslösen, dass das System die Debugdumpdateien erstellt. Mehrere Fehlercodes müssen durch ein Semikolon (;) getrennt werden.

Wenn Sie dem Registrierungsschlüssel einen DumpOnCodes-Wert hinzufügen und die Option /Dump verwenden, erstellt das System Debugdumpdateien, die auf beiden Einstellungen basieren.

Weitere Informationen zu Debugdumpdateien finden Sie unter Arbeiten mit Debugdumpdateien.

/DumpOnError

(Optional) Erstellt die Debugdumpdateien MDMP und TMP, wenn bei der Ausführung des Pakets ein beliebiger Fehler auftritt.

In der Standardeinstellung Integration Services die Debugdumpdateien im Ordner <Laufwerk>:\Programme\Microsoft SQL Server\100\Shared\ErrorDumps.

HinweisHinweis
Debugdumpdateien können vertrauliche Informationen enthalten. Verwenden Sie eine Zugriffssteuerungsliste, um den Zugriff auf die Dateien einzuschränken oder die Dateien in einen Ordner mit eingeschränktem Zugriff zu kopieren. Bevor Sie Ihre Debugdateien beispielsweise an Microsoft Support Services senden, wird empfohlen, vertrauliche Informationen zu entfernen.

Fügen Sie dem Registrierungsschlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS einen DumpOnError REG_DWORD-Wert hinzu, um diese Option auf alle vom Dienstprogramm dtexec ausgeführten Pakete anzuwenden. Der Wert des DumpOnError REG_DWORD-Werts bestimmt, ob die Option /DumpOnError mit dem Dienstprogramm dtexec verwendet werden muss:

  • Ein Datenwert ungleich null (0) gibt an, dass das System beim Auftreten beliebiger Fehler Debugdumpdateien erstellt, und zwar unabhängig davon, ob Sie die Option /DumpOnError mit dem Dienstprogramm dtexec verwenden.

  • Ein Datenwert gleich null (0) gibt an, dass das System beim Auftreten beliebiger Fehler keine Debugdumpdateien erstellt, außer Sie verwenden die Option /DumpOnError mit dem Dienstprogramm dtexec.

Weitere Informationen zu Debugdumpdateien finden Sie unter Arbeiten mit Debugdumpdateien.

/F[ile]filespec

(Optional). Lädt ein im Dateisystem gespeichertes Paket. Mit dem filespec-Argument wird der Pfad und der Dateiname des Pakets angegeben. Sie können den Pfad entweder als UNC-Pfad (Universal Naming Convention) oder als lokalen Pfad angeben. Enthält der im filespec-Argument angegebene Pfad- oder Dateiname ein Leerzeichen, muss das filespec-Argument in Anführungszeichen gesetzt werden.

Die Option /File kann nicht zusammen mit der Option /DTS oder /SQL verwendet werden. Werden mehrere Optionen angegeben, erzeugt dtexec einen Fehler.

/H[elp] [option_name]

(Optional). Zeigt die Hilfe zu den Optionen oder die Hilfe zu der mit option_name angegebenen Option an und beendet das Dienstprogramm.

Wenn Sie ein Argument für option_name angeben, startet dtexec die SQL Server-Onlinedokumentation und zeigt das Thema dtexec (Dienstprogramm) an.

/L[ogger]classid_orprogid;configstring

(Optional). Ordnet das Ausführen eines SSIS-Pakets einem oder mehreren Protokollanbietern zu. Mit dem classid_orprogid-Parameter wird der Protokollanbieter angegeben; diese Angabe kann in Form eines Klassen-GUID erfolgen. configstring ist die Zeichenfolge, die zum Konfigurieren des Protokollanbieters verwendet wird.

In der folgenden Liste sind die verfügbaren Protokollanbieter aufgeführt:

  • Textdatei:

    • ProgID: DTS.LogProviderTextFile.1

    • ClassID: {59B2C6A5-663F-4C20-8863-C83F9B72E2EB}

  • SQL Server Profiler:

    • ProgID: DTS.LogProviderSQLProfiler.1

    • ClassID: {5C0B8D21-E9AA-462E-BA34-30FF5F7A42A1}

  • SQL Server:

    • ProgID: DTS.LogProviderSQLServer.1

    • ClassID: {6AA833A1-E4B2-4431-831B-DE695049DC61}

  • Windows-Ereignisprotokoll:

    • ProgID: DTS.LogProviderEventLog.1

    • ClassID: {97634F75-1DC7-4F1F-8A4C-DAF0E13AAA22}

  • XML-Datei:

    • ProgID: DTS.LogProviderXMLFile.1

    • ClassID: {AFED6884-619C-484F-9A09-F42D56E1A7EA}

/M[axConcurrent]concurrent_executables

(Optional). Gibt die Anzahl von ausführbaren Dateien an, die das Paket gleichzeitig ausführen kann. Der angegebene Wert muss entweder eine nicht negative ganze Zahl oder -1 sein. Ein Wert von -1 bedeutet, dass SSIS eine maximale Anzahl gleichzeitig aktiver ausführbarer Dateien zulässt, die der Gesamtanzahl von Prozessoren plus zwei des Computers entspricht, auf dem das Paket ausgeführt wird.

/P[assword]password

(Optional). Ermöglicht das Abrufen eines Pakets, das durch die SQL Server-Authentifizierung geschützt ist. Diese Option wird zusammen mit der Option /User verwendet. Wird die Option /Password nicht angegeben und die Option /User verwendet, wird ein leeres Kennwort verwendet. Der Wert für password kann in Anführungszeichen eingeschlossen werden.

SicherheitshinweisSicherheitshinweis
Verwenden Sie nach Möglichkeit die Windows-Authentifizierung.

/Remcomment

(Optional). Schließt einen Kommentar in die Befehlszeile oder in Befehlsdateien ein. Das Argument ist optional. Der Wert für commentc ist eine Zeichenfolge, die entweder in Anführungszeichen eingeschlossen werden muss oder keine Leerzeichen enthalten darf. Wird kein Argument angegeben, wird eine leere Zeile eingefügt. Während der Befehlsermittlungsphase werden comment-Werte nicht berücksichtigt.

/Rep[orting]level [;event_guid_or_name[;event_guid_or_name[...]]

(Optional). Gibt an, welche Meldungstypen gemeldet werden sollen. Für level stehen folgende Berichtsoptionen zur Verfügung:

N    Keine Berichterstellung.

E    Fehler werden gemeldet.

W    Warnungen werden gemeldet.

I    Informationsmeldungen werden gemeldet.

C    Benutzerdefinierte Ereignisse werden gemeldet.

D    Datenfluss-Taskereignisse werden gemeldet.

P    Der Status wird gemeldet.

V    Ausführliche Berichterstellung.

Die Argumente V und N schließen sich gegenseitig und alle anderen Argumente aus; sie müssen allein angegeben werden. Wenn die Option /Reporting nicht angegeben wird, umfasst die Standardebene die Optionen E (Fehler), W (Warnungen) und P (Status).

Vor allen Ereignissen wird ein Timestamp im Format "DD.MM.YY HH:MM:SS" sowie ggf. ein GUID oder ein Anzeigename aufgeführt.

Der optionale event_guid_or_name-Parameter ist eine Ausnahmeliste für die Protokollanbieter. Die Ausnahmeliste gibt die normalerweise protokollierten Ereignisse an, die nicht protokolliert werden.

Sie müssen ein Ereignis nur ausschließen, wenn dieses standardmäßig protokolliert wird.

/Res[tart] {deny | force | ifPossible}

(Optional). Gibt einen neuen Wert für die CheckpointUsage-Eigenschaft des Pakets an. Die Parameter haben folgende Bedeutung:

Deny   Legt die CheckpointUsage-Eigenschaft auf DTSCU_NEVER fest.

Force    Legt die CheckpointUsage-Eigenschaft auf DTSCU_ALWAYS fest.

ifPossible    Legt die CheckpointUsage-Eigenschaft auf DTSCU_IFEXISTS fest.

Wird kein Wert angegeben, wird der Standardwert force verwendet.

/SetpropertyPath;value

(Optional). Setzt die Konfiguration einer Variablen, einer Eigenschaft, eines Containers, eines Protokollanbieters, eines Foreach-Enumerators oder einer Verbindung innerhalb eines Pakets außer Kraft. Wenn diese Option verwendet wird, ändert /Set das propertyPath-Argument in den angegebenen Wert. Es können mehrere /Set-Optionen angegeben werden.

Der Wert von propertyPath kann mithilfe des Paketkonfigurations-Assistenten bestimmt werden. Die Pfade für die von Ihnen ausgewählten Elemente werden auf der letzten Seite des Assistenten, Assistenten abschließen, angezeigt und können von dort kopiert werden. Wenn Sie den Assistenten nur für diesen Zweck verwendet haben, können Sie ihn nach dem Kopieren der Pfade abbrechen.

Das folgende Beispiel zeigt, wie ein Paket ausgeführt und ein neuer Wert für eine Variable angegeben wird:

dtexec /f mypackage.dtsx /set \package.variables[myvariable].Value;myvalue

Sie können die Option /Set verwenden, um den Speicherort zu ändern, von dem Paketkonfigurationen geladen werden. Sie können die Option /Set jedoch nicht verwenden, um einen Wert außer Kraft zu setzen, der zur Entwurfszeit von einer Konfiguration angegeben wurde. Weitere Informationen zur Anwendung von Paketkonfigurationen finden Sie unter Paketkonfigurationen und Verhaltensänderungen von Integration Services-Features in SQL Server 2008.

/Ser[ver]server

(Optional). Wenn die Option /SQL oder /DTS verwendet wurde, gibt diese Option den Namen des Servers an, von dem das Paket abgerufen werden soll. Wenn Sie die Option /Server nicht angeben, die Option /SQL oder /DTS jedoch angegeben wird, wird versucht, das Paket von dem lokalen Server auszuführen. Der Wert für server_instance kann in Anführungszeichen eingeschlossen werden.

/SQ[L]package_path

Lädt ein in SQL Server gespeichertes Paket. Mit dem package_path-Argument wird der Name des abzurufenden Pakets angegeben. Werden Ordner in die Pfadangabe eingeschlossen, werden sie mit umgekehrten Schrägstrichen ("\") abgeschlossen. Der Wert für package_path kann in Anführungszeichen eingeschlossen werden. Enthält der im package_path-Argument angegebene Pfad- oder Dateiname ein Leerzeichen, muss das package_path-Argument in Anführungszeichen gesetzt werden.

Sie können die Optionen /User, /Password und /Server zusammen mit der Option /SQL verwenden.

Wenn Sie die Option /User nicht angeben, wird die Windows-Authentifizierung für den Zugriff auf das Paket verwendet. Wenn Sie die Option /User verwenden, wird der mit /User angegebene Anmeldename der SQL Server-Authentifizierung zugeordnet.

Die Option /Password wird nur zusammen mit der Option /User verwendet. Wenn Sie die Option /Password verwenden, erfolgt der Zugriff auf das Paket mit den angegebenen Benutzernamen- und Kennwortinformationen. Wird die Option /Password nicht angegeben, wird ein leeres Kennwort verwendet.

SicherheitshinweisSicherheitshinweis
Verwenden Sie nach Möglichkeit die Windows-Authentifizierung.

Wird die Option /Server nicht angegeben, wird die standardmäßige lokale Instanz von SQL Server verwendet.

Die Option /SQL kann nicht zusammen mit der Option /DTS oder /File verwendet werden. Werden mehrere Optionen angegeben, erzeugt dtexec einen Fehler.

/Su[m]

(Optional). Zeigt einen inkrementellen Zähler an, der die Anzahl der Zeilen enthält, die von der nächsten Komponente empfangen werden.

/U[ser]user_name

(Optional). Ermöglicht das Abrufen eines Pakets, das durch die SQL Server-Authentifizierung geschützt ist. Diese Option wird nur verwendet, wenn die Option /SQL angegeben wird. Der Wert für user_name kann in Anführungszeichen eingeschlossen werden.

SicherheitshinweisSicherheitshinweis
Verwenden Sie nach Möglichkeit die Windows-Authentifizierung.

/Va[lidate]

(Optional). Beendet das Ausführen des Pakets nach der Überprüfungsphase, ohne das Paket tatsächlich auszuführen. Während der Überprüfung bewirkt die Verwendung von /WarnAsError, dass dtexec eine Warnung wie einen Fehler behandelt. Daher erzeugt das Paket einen Fehler, wenn während des Überprüfens eine Warnung ausgegeben wird.

/VerifyB[uild]major[;minor[;build]]

(Optional). Überprüft die Buildnummer eines Pakets anhand der Buildnummern, die während der Überprüfungsphase mit den Argumenten major, minor und build angegeben wurden. Stimmen die Buildnummern nicht überein, wird das Paket nicht ausgeführt.

Bei den Werten handelt es sich um lange ganze Zahlen. Das Argument kann eine von drei Formen annehmen, wobei ein Wert für major immer erforderlich ist:

  • major

  • major;minor

  • major; minor; build

/VerifyP[ackageID]packageID

(Optional). Überprüft den GUID des auszuführenden Pakets anhand des Wertes, der im package_id-Argument angegeben wurde.

/VerifyS[igned]

(Optional). Veranlasst Integration Services dazu, die digitale Signatur des Pakets zu überprüfen. Wenn das Paket nicht signiert oder die Signatur nicht gültig ist, schlägt das Paket fehl. Weitere Informationen finden Sie unter Verwenden von digitalen Signaturen mit Paketen.

Wichtiger HinweisWichtig
Wenn Sie die Überprüfung der Signatur konfiguriert haben, prüft Integration Services lediglich, ob die digitale Signatur vorhanden und gültig ist und ob die Quelle vertrauenswürdig ist. Integration Services prüft nicht, ob Änderungen am Paket vorgenommen wurden.
HinweisHinweis
Der optionale BlockedSignatureStates-Registrierungswert kann eine Einstellung angeben, die restriktiver ist als die Option für die digitale Signatur, die in Business Intelligence Development Studio oder in der dtexec-Befehlszeile festgelegt wurde. In dieser Situation überschreibt die restriktivere Registrierungseinstellung die andere Einstellung.

/VerifyV[ersionID]versionID

(Optional). Überprüft den Versions-GUID eines auszuführenden Pakets; dieser wird mit dem Wert verglichen, der während der Paketüberprüfungsphase im version_id-Argument angegeben wurde.

/VLog[Filespec]

(Optional). Schreibt alle Integration Services-Paketereignisse an die Protokollanbieter, die beim Entwurf des Pakets aktiviert wurden. Geben Sie im Filespec-Parameter einen Pfad- und Dateinamen an, damit Integration Services einen Protokollanbieter für Textdateien aktiviert und Protokollereignisse in eine festgelegte Textdatei schreibt.

Wenn Sie den Filespec-Parameter nicht einschließen, aktiviert Integration Services keinen Protokollanbieter für Textdateien. Integration Services schreibt dann Protokollereignisse nur an die Protokollanbieter, die beim Entwurf des Pakets aktiviert wurden.

/W[arnAsError]

(Optional). Bewirkt, dass das Paket eine Warnung wie einen Fehler behandelt. Das Paket erzeugt daher einen Fehler, wenn während des Überprüfens eine Warnung ausgegeben wird. Wenn während des Überprüfens keine Warnung ausgegeben wird und die Option /Validate nicht angegeben wurde, wird das Paket ausgeführt.

/X86

(Optional). Veranlasst den SQL Server-Agent, das Paket im 32-Bit-Modus auf einem 64-Bit-Computer auszuführen. Diese Option wird von SQL Server-Agent festgelegt, wenn die folgenden Bedingungen den Wert True haben:

  • Der Auftragsschritt lautet SQL Server Integration Services-Paket.

  • Die Option 32 Bit-Laufzeit verwenden auf der Registerkarte Ausführungsoptionen des Dialogfelds Neuer Auftragsschritt wird aktiviert.

Sie können diese Option auch für einen Auftragsschritt des SQL Server-Agents festlegen, indem Sie die gespeicherten Prozeduren oder SQL Server Management Objects (SMO) verwenden, um den Auftrag programmgesteuert zu erstellen.

Diese Option wird nur von SQL Server-Agent verwendet. Diese Option wird ignoriert, wenn Sie das Dienstprogramm dtexec an der Eingabeaufforderung ausführen.

Hinweise

Die Reihenfolge, in der Sie die Befehlsoptionen angeben, kann sich auf die Art und Weise der Paketausführung auswirken:

  • Optionen werden in der Reihenfolge verarbeitet, in der sie in der Befehlszeile erkannt werden. Befehlsdateien werden eingelesen, wenn sie in der Befehlszeile erkannt werden. Die Befehle in der Befehlsdatei werden ebenfalls in der Reihenfolge verarbeitet, in der sie erkannt werden.

  • Wenn eine Option, ein Parameter oder eine Variable mehrmals in derselben Befehlszeilenanweisung angegeben wird, hat die letzte Instanz der Option Vorrang.

  • /Set- und /ConfigFile-Optionen werden in der Reihenfolge verarbeitet, in der sie erkannt werden.

Beispiele

Ausführen von Paketen

Verwenden Sie folgenden Code, um ein in SQL Server gespeichertes SSIS-Paket auszuführen, das die Windows-Authentifizierung verwendet.

dtexec /sq pkgOne /ser productionServer

Wenn Sie ein SSIS-Paket ausführen möchten, das im Ordner Dateisystem im SSIS-Paketspeicher gespeichert wird, verwenden Sie folgenden Code:

dtexec /dts "\File System\MyPackage"

Verwenden Sie folgenden Code, um ein Paket, das die Windows-Authentifizierung verwendet und in SQL Server gespeichert ist, zu überprüfen, ohne das Paket auszuführen:

dtexec /sq pkgOne /ser productionServer /va

Verwenden Sie folgenden Code, um ein im Dateisystem gespeichertes SSIS-Paket auszuführen:

dtexec /f "c:\pkgOne.dtsx" 

Verwenden Sie folgenden Code, um ein im Dateisystem gespeichertes SSIS-Paket auszuführen und Protokollierungsoptionen anzugeben:

dtexec /f "c:\pkgOne.dtsx" /l "DTS.LogProviderTextFile;c:\log.txt"

Verwenden Sie folgenden Code, um ein Paket auszuführen, das die Windows-Authentifizierung verwendet und in der standardmäßigen lokalen Instanz von SQL Server gespeichert ist, und um die Paketversion vor dem Ausführen zu überprüfen:

dtexec /sq pkgOne /verifyv {c200e360-38c5-11c5-11ce-ae62-08002b2b79ef}

Verwenden Sie folgenden Code, um ein im Dateisystem gespeichertes und extern konfiguriertes SSIS-Paket auszuführen:

dtexec /f "c:\pkgOne.dtsx" /conf "c:\pkgOneConfig.cfg"
HinweisHinweis

Die package_path- oder filespec-Argumente der Optionen /SQL, /DTS oder /FILE müssen in Anführungszeichen eingeschlossen werden, wenn der Pfad- oder Dateiname ein Leerzeichen enthält. Wenn das Argument nicht in Anführungszeichen eingeschlossen ist, darf es keine Leerzeichen enthalten.

Protokollierungsoption

Sind beispielsweise die Protokolleintragstypen A, B und C vorhanden, zeigt die Option ConsoleLog ohne Parameter alle drei Protokolltypen mit allen Feldern an:

/CONSOLELOG

Die folgende Option zeigt alle Protokolltypen an, aber nur mit der Namens- und der Meldungsspalte:

/CONSOLELOG NM

Die folgende Option zeigt alle Spalten an, aber nur für den Protokolleintragstyp A:

/CONSOLELOG I;LogEntryTypeA

Die folgende Option zeigt nur den Protokolleintragstyp A mit der Namens- und der Meldungsspalte an:

/CONSOLELOG NM;I;LogEntryTypeA

Die folgende Option zeigt Protokolleinträge für die Protokolleintragstypen A und B an:

/CONSOLELOG I;LogEntryTypeA;LogEntryTypeB

Sie können dieselben Ergebnisse erzielen, indem Sie die Option ConsoleLog mehrmals verwenden:

/CONSOLELOG I;LogEntryTypeA /CONSOLELOG I;LogEntryTypeB

Wird die Option ConsoleLog ohne Parameter verwendet, werden alle Felder angezeigt. Die Angabe des list_options-Parameters bewirkt, dass nur der Protokolleintragstyp A mit allen Feldern angezeigt wird:

/CONSOLELOG NM;I;LogEntryTypeA /CONSOLELOG

Durch folgenden Code werden alle Protokolleintragstypen mit Ausnahme des Protokolleintragstyps A angezeigt; d. h. es werden nur die Protokolleintragstypen B und C angezeigt:

/CONSOLELOG E;LogEntryTypeA

Im folgenden Beispiel werden dieselben Ergebnisse erzielt, indem die Option ConsoleLog mehrmals verwendet und eine einzelne Ausnahme definiert wird:

/CONSOLELOG E;LogEntryTypeA /CONSOLELOG
/CONSOLELOG E;LogEntryTypeA /CONSOLELOG E;LogEntryTypeA
/CONSOLELOG E;LogEntryTypeA;LogEntryTypeA

Im folgenden Beispiel werden keine Protokollmeldungen angezeigt, da ein Protokolleintragstyp, der in der Inklusions- und der Ausschlussliste enthalten ist, ausgeschlossen wird.

/CONSOLELOG E;LogEntryTypeA /CONSOLELOG I;LogEntryTypeA

Option SET

Im folgenden Beispiel wird die Verwendung der Option /SET gezeigt, mit der Sie den Wert der Paketeigenschaft oder -variablen ändern können, wenn Sie das Paket über die Befehlszeile starten.

/SET \package\DataFlowTask.Variables[User::MyVariable].Value;newValue

Änderungsverlauf

Aktualisierter Inhalt

  • Der Beschreibung der einzelnen Optionen wurde jeweils ein Absatz hinzugefügt, in dem erläutert wird, wie die Optionen /ConfigFile, /Connection und /SET zur Laufzeit verwendet werden.