Okay, ich habe eine Menge über den SSIS-Paketspeicher und das Speichern von Paketen missverstanden. Hier ist, was ich gelernt habe. Erstens: "Das Ding, mit dem Sie sich über die Schaltfläche "Verbinden" in SSMS verbinden können (Verbinden -> Integration Services...), heißt der SSIS-Paket-Speicher .
Was genau passiert, wenn Sie ein Paket zu den Ordnern "Dateisystem" oder "MSDB" im Ordner "Gespeicherte Pakete" der Integrationsdienste hinzufügen? Was ist der Vorteil?
Dateisystem
Wenn Sie mit dem Dateisystem Ordner im SSIS-Paket-Speicher, speichern Sie Ihre Pakete im Standard-Dateisystemverzeichnis ( ...\Microsoft SQL Server\100\DTS\Packages
) oder ändern Sie den Stammordner für Dateisystem in das Verzeichnis, das Sie verwenden möchten. (Sie können die Wurzel ändern durch Ändern des Standardwerts von <StorePath>..\Packages</StorePath>
in der Datei MsDtsSrvr.ini.xml, die sich im Verzeichnis ...\Microsoft SQL Server\100\DTS\Binn
Verzeichnis. Vergessen Sie nicht, danach den Dienst Integration Services neu zu starten). Wenn Sie ein Paket zu diesem Verzeichnis hinzufügen, wird es im Ordner File System im SSIS-Paketshop angezeigt. Sie können das Paket dann direkt aus dem SSIS-Paketshop oder über einen SQL Server Agent-Auftrag ausführen (indem Sie den SSIS-Paketshop als Paketquelle in den Auftragsschritteigenschaften auswählen und dann das Paket auswählen).
Die Bearbeitung von Paketen ist einfach: Öffnen Sie das Paket im Dateisystemverzeichnis, bearbeiten und speichern Sie es, und die neue Version ist sofort über den SSIS-Paketshop verfügbar.
Vorteile:
- Die Bereitstellung und Fehlerbehebung von Paketen ist einfach
- Pakete sind auch dann verfügbar, wenn die Datenbank-Engine ausgefallen ist
SQL-Server/MSDB
Wenn Sie sich auf die msdb Datenbank, um Ihre Pakete zu speichern, müssen Sie jedes Paket über den SSIS Package Store in msdb importieren. Klicken Sie mit der rechten Maustaste auf den Ordner MSDB und wählen Sie Paket importieren. Dadurch wird das Paket in der msdb-Datenbank gespeichert. Sie brauchen die ursprünglichen .dtsx-Paketdateien anschließend nicht zu speichern.
Die Bearbeitung von Paketen ist eine etwas härter : Sie müssen das Paket exportieren, es bearbeiten und wieder in den SSIS-Paketshop importieren. Oder Sie öffnen ein neues Projekt in BIDS, fügen das Paket hinzu, indem Sie mit der rechten Maustaste auf SSIS-Pakete klicken und Vorhandenes Paket von SQL Server hinzufügen wählen, es bearbeiten und dann das Paket erneut in den SSIS-Paketshop importieren.
Vorteile:
- Die Sicherheit von Paketen kann über die Datenbanksicherheit genau konfiguriert werden.
- Die Pakete werden gesichert, wenn die msdb-Datenbank gesichert wird.
- Pakete werden an einem zentralen Ort gelagert
Welche Gründe sprechen dafür, Pakete nicht nur als Dateien auf dem Server zu speichern, sondern auch die Integrationsdienste zu nutzen?
Warum sollten Sie also ein Paket zum SSIS-Paketspeicher hinzufügen und es nicht einfach ausführen, wie wir es getan haben, indem Sie direkt auf eine package.dtsx-Datei im Fenster Job-Step-Eigenschaften verweisen?) Es kommt darauf an: Wenn Sie Ihre Pakete in der msdb-Datenbank haben wollen, müssen Sie 必要 den Paketspeicher, da es keine andere Möglichkeit gibt, Ihre Pakete zu pflegen. Wenn Sie das Dateisystem verwenden, kann es sein, dass Sie ein separates "Development"- und "Deployment"-Verzeichnis haben und alle Pakete, die für das Deployment bereit sind, über den SSIS Package Store gefunden werden können. In jedem Fall bietet der SSIS-Paketshop eine einfache Schnittstelle zu Ihren Paketen.
Dank an João Leal y Diego für Ihre Antworten!