Unterstützung für SQL Server Integration Services in Amazon RDS für SQL Server - Amazon Relational Database Service

Unterstützung für SQL Server Integration Services in Amazon RDS für SQL Server

Microsoft SQL Server Integration Services (SSIS) ist eine Komponente, mit der Sie eine breite Palette von Datenmigrationsaufgaben ausführen können. SSIS ist eine Plattform für Datenintegrations- und Workflow-Anwendungen. Sie verfügt über ein Data Warehousing-Tool, das für Datenextraktion, Transformation und Laden (ETL) verwendet wird. Sie können dieses Tool auch verwenden, um die Wartung von SQL Server-Datenbanken und Aktualisierungen von mehrdimensionalen Cubedaten zu automatisieren.

SSIS-Projekte werden in Pakete organisiert, die als XML-basierte DTSX-Dateien gespeichert werden. Pakete können Kontrollflüsse und Datenflüsse enthalten. Zur Darstellung von ETL-Vorgängen verwenden Sie Datenflüsse. Nach der Bereitstellung werden Pakete in SQL Server in der SSISDB-Datenbank gespeichert. SSISDB ist eine OLTP-Datenbank (Online Transaction Processing) im vollständigen Wiederherstellungsmodus.

Amazon RDS for SQL Server unterstützt das Ausführen von SSIS direkt auf RDS-DB-Instance. Sie können SSIS für eine vorhandene oder neue DB-Instance aktivieren. SSIS wird auf derselben DB-Instance wie Ihre Datenbank-Engine installiert.

RDS unterstützt SSIS für die SQL Server Standard und Enterprise Edition in den folgenden Versionen:

  • SQL Server 2019, Version 15.00.4043.16.v1 und höher

  • SQL Server 2017, Version 14.00.3223.3.v1 und höher

  • SQL Server 2016, Version 13.00.5426.0.v1 und höher

Einschränkungen und Empfehlungen

Die folgenden Einschränkungen und Empfehlungen gelten für die Ausführung von SSIS auf RDS for SQL Server:

  • Die DB-Instance muss für die SSIS-Authentifizierung AWS Managed Microsoft AD verwendet werden.

  • Der DB-Instance muss eine Parametergruppe zugeordnet sein, wobei der Parameter clr enabled auf „1“ gesetzt ist. Weitere Informationen finden Sie unter Ändern des Parameters für SSIS.

    Anmerkung

    Wenn Sie den clr enabled-Parameter in SQL Server 2017 aktivieren, können Sie die Common Language Runtime (CLR) für Ihre DB-Instance nicht verwenden.

  • Die folgenden Kontrollflussaufgaben werden unterstützt:

    • Analysis Services-Aufgabe „DDL ausführen“

    • Analysis Services-Verarbeitungsaufgabe

    • Masseneinfügungsaufgabe

    • Aufgabe „Datenbankintegrität überprüfen“

    • Datenfluss-Aufgabe

    • Aufgabe „Data Mining abfragen“

    • Datenprofilerstellungsaufgabe

    • Aufgabe „Paket ausführen“

    • Aufgabe „SQL Server-Agent-Auftrag ausführen“

    • Aufgabe „SQL ausführen“

    • Aufgabe „T-SQL-Anweisung ausführen“

    • Aufgabe „Bediener benachrichtigen“

    • Aufgabe „Index neu erstellen“

    • Aufgabe „Index neu organisieren“

    • Aufgabe „Datenbank verkleinern“

    • Aufgabe „Datenbank übertragen“

    • Aufgabe „Aufträge übertragen“

    • Aufgabe „Anmeldungen übertragen“

    • Task „SQL Server-Objekte übertragen“

    • Aufgabe „Statistik aktualisieren“

  • Es wird nur die Projektbereitstellung unterstützt.

  • Das Ausführen von SSIS-Paketen mithilfe von SQL Server-Agent wird unterstützt.

  • Es wird nur eine SQL Server-basierte Protokollierung unterstützt.

  • Verwenden Sie für die Arbeit mit Dateien nur den Ordner D:\S3. Dateien, die in einem anderen Verzeichnis gespeichert sind, werden gelöscht. Beachten Sie einige andere Details zum Dateispeicherort:

    • Platzieren Sie SSIS-Projekteingabe- und Ausgabedateien im Ordner D:\S3.

    • Ändern Sie für die Datenflussaufgabe den Speicherort für BLOBTempStoragePath und BufferTempStoragePath in eine Datei innerhalb des Ordners D:\S3. Der Dateipfad muss mit beginne D:\S3\.

    • Stellen Sie sicher, dass alle Parameter, Variablen und Ausdrücke, die für Dateiverbindungen verwendet werden, auf den Ordner D:\S3 verweisen.

    • Bei Multi-AZ-Instances werden Dateien, die von SSIS im Ordner D:\S3 erstellt wurden, nach einem Failover gelöscht. Weitere Informationen finden Sie unter Multi-AZ-Einschränkungen für die S3-Integration.

    • Laden Sie die von SSIS erstellten Dateien im Ordner D:\S3 in Ihren Amazon S3-Bucket hoch, um sie dauerhaft zu machen.

  • Importieren von Spalten- und Exportspalten-Transformationen sowie die Skriptkomponente in der Datenflussaufgabe werden nicht unterstützt.

  • Sie können keine Dump bei ausgeführten SSIS-Paketen aktivieren, und Sie können keine Datentippeingaben für SSIS-Pakete hinzufügen.

  • Die SSIS-Scale-Out-Funktion wird nicht unterstützt.

  • Projekte können nicht direkt bereitgestellt werden. Dazu stellen wir gespeicherte RDS-Prozeduren bereit. Weitere Informationen finden Sie unter Bereitstellen eines SSIS-Projekts.

  • Erstellen Sie SSIS-Projektdateien (.ispac) mit dem Schutzmodus DoNotSavePasswords für die Bereitstellung auf RDS.

  • SSIS wird auf immer eingeschalteten Instances mit Read Replicas nicht unterstützt.

  • Sie können die SSISDB-Datenbank, die der Option SSIS zugeordnet ist, nicht sichern.

  • Das Importieren und Wiederherstellen der SSISDB-Datenbank aus anderen SSIS-Instances wird nicht unterstützt.

Aktivieren von SSIS

Sie aktivieren SSIS, indem Sie der DB-Instance die SSIS-Option hinzufügen. Verwenden Sie den folgenden Prozess:

  1. Erstellen Sie eine neue Optionsgruppe oder wählen Sie eine bestehende Optionsgruppe aus.

  2. Fügen Sie die Option SSIS zur Optionsgruppe hinzu.

  3. Erstellen Sie eine neue Parametergruppe oder wählen Sie eine vorhandene Parametergruppe aus.

  4. Ändern Sie die Parametergruppe, um den Parameter clr enabled auf „1“ einzustellen.

  5. Ordnen Sie die Optionsgruppe und die Parametergruppe der DB-Instance zu.

  6. Aktivieren Sie die Amazon S3-Integration.

Anmerkung

Wenn auf der DB-Instance bereits eine Datenbank mit dem Namen „SSISDB“ oder eine reservierte SSIS-Anmeldung vorhanden ist, können Sie SSIS für die Instance nicht aktivieren.

Erstellen der Optionsgruppe für SSIS

Um mit SSIS zu arbeiten, erstellen Sie eine Optionsgruppe oder ändern Sie eine Optionsgruppe, die der SQL Server-Edition und der Version der DB-Instance entspricht, die Sie verwenden möchten. Verwenden Sie dazu die AWS Management Console oder AWS CLI.

Mit der folgenden Konsolenprozedur wird eine Optionsgruppe für SQL Server Standard Edition 2016 erstellt.

So erstellen Sie die Optionsgruppe

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.

  3. Wählen Sie Create group (Gruppe erstellen) aus.

  4. Führen Sie im Fenster Create option group (Optionsgruppe erstellen) Folgendes aus:

    1. Geben Sie unter Name einen Namen für die Optionsgruppe ein, der innerhalb Ihres AWS-Kontos nur einmal vorkommt, z. B. ssis-se-2016. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

    2. Geben Sie unter Beschreibung eine kurze Beschreibung der Optionsgruppe ein, z. B. SSIS option group for SQL Server SE 2016. Die Beschreibung ist nur zur Information.

    3. Wählen Sie für Engine die Option sqlserver-se aus.

    4. Wählen Sie im Feld Engine-Hauptversion 13.00 aus.

  5. Wählen Sie Create aus.

Mit der folgenden Konsolenprozedur wird eine Optionsgruppe für SQL Server Standard Edition 2016 erstellt.

So erstellen Sie die Optionsgruppe

  • Führen Sie einen der folgenden Befehle aus.

    Für Linux, macOS oder Unix:

    aws rds create-option-group \ --option-group-name ssis-se-2016 \ --engine-name sqlserver-se \ --major-engine-version 13.00 \ --option-group-description "SSIS option group for SQL Server SE 2016"

    Für Windows:

    aws rds create-option-group ^ --option-group-name ssis-se-2016 ^ --engine-name sqlserver-se ^ --major-engine-version 13.00 ^ --option-group-description "SSIS option group for SQL Server SE 2016"

Hinzufügen der SSIS-Option zur Optionsgruppe

Verwenden Sie als Nächstes die AWS Management Console oder AWS CLI, um die Option SSIS zu Ihrer Optionsgruppe hinzuzufügen.

So fügen Sie die SSIS-Option hinzu

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.

  3. Wählen Sie in diesem Beispiel die gerade erstellte Optionsgruppe ssis-se-2016 aus.

  4. Wählen Sie Add option (Option hinzufügen).

  5. Wählen Sie unter Optionsdetails für Optionsname die Option SSIS aus.

  6. Wählen Sie unter Scheduling (Planung) aus, ob die Option sofort oder während des nächsten Wartungsfensters hinzugefügt werden soll.

  7. Wählen Sie Add option (Option hinzufügen).

So fügen Sie die SSIS-Option hinzu

  • Fügen Sie die Option SSIS zur Optionsgruppe hinzu.

    Für Linux, macOS oder Unix:

    aws rds add-option-to-option-group \ --option-group-name ssis-se-2016 \ --options OptionName=SSIS \ --apply-immediately

    Für Windows:

    aws rds add-option-to-option-group ^ --option-group-name ssis-se-2016 ^ --options OptionName=SSIS ^ --apply-immediately

Erstellen der Parametergruppe für SSIS

Erstellen oder ändern Sie eine Parametergruppe für den Parameter clr enabled, der der SQL Server-Edition und der Version der DB-Instance entspricht, die Sie für SSIS verwenden möchten.

Im folgenden Verfahren wird eine Parametergruppe für SQL Server Standard Edition 2016 erstellt.

So erstellen Sie die Parametergruppe

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Parameter groups (Parametergruppen) aus.

  3. Wählen Sie Create parameter group (Parametergruppe erstellen).

  4. Führen Sie im Bereich Parametergruppe erstellen die folgenden Schritte aus:

    1. Wählen Sie für Parametergruppenfamilie die Option sqlserver-se-13.0 aus.

    2. Geben Sie unter Gruppenname einen Bezeichner für die Parametergruppe ein, z. B. ssis-sqlserver-se-13.

    3. Geben Sie für Beschreibung den Text clr enabled parameter group ein.

  5. Wählen Sie Create aus.

Im folgenden Verfahren wird eine Parametergruppe für SQL Server Standard Edition 2016 erstellt.

So erstellen Sie die Parametergruppe

  • Führen Sie einen der folgenden Befehle aus.

    Für Linux, macOS oder Unix:

    aws rds create-db-parameter-group \ --db-parameter-group-name ssis-sqlserver-se-13 \ --db-parameter-group-family "sqlserver-se-13.0" \ --description "clr enabled parameter group"

    Für Windows:

    aws rds create-db-parameter-group ^ --db-parameter-group-name ssis-sqlserver-se-13 ^ --db-parameter-group-family "sqlserver-se-13.0" ^ --description "clr enabled parameter group"

Ändern des Parameters für SSIS

Ändern Sie den clr enabled-Parameter in der Parametergruppe, die der SQL Server-Edition und der Version Ihrer DB-Instance entspricht. Stellen Sie für SSIS den Parameter clr enabled auf „1“ ein.

Im folgenden Verfahren wird die Parametergruppe geändert, die Sie für SQL Server Standard Edition 2016 erstellt haben.

So ändern Sie die Parametergruppe

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Parameter groups (Parametergruppen) aus.

  3. Wählen Sie die Parametergruppe aus, z. B. ssis-sqlserver-se-13.

  4. Filtern Sie unter Parameter die Parameterliste nach clr.

  5. Wählen Sie clr enabled.

  6. Wählen Sie Parameter bearbeiten aus.

  7. Wählen Sie unter Werte die Option 1 aus.

  8. Wählen Sie Save Changes (Änderungen speichern).

Im folgenden Verfahren wird die Parametergruppe geändert, die Sie für SQL Server Standard Edition 2016 erstellt haben.

So ändern Sie die Parametergruppe

  • Führen Sie einen der folgenden Befehle aus.

    Für Linux, macOS oder Unix:

    aws rds modify-db-parameter-group \ --db-parameter-group-name ssis-sqlserver-se-13 \ --parameters "ParameterName='clr enabled',ParameterValue=1,ApplyMethod=immediate"

    Für Windows:

    aws rds modify-db-parameter-group ^ --db-parameter-group-name ssis-sqlserver-se-13 ^ --parameters "ParameterName='clr enabled',ParameterValue=1,ApplyMethod=immediate"

Zuordnen der Options- und Parametergruppe zu Ihrer DB-Instance

Um die SSIS-Optionsgruppe und -Parametergruppe Ihrer DB-Instance zuzuordnen, verwenden Sie die AWS Management Console oder die AWS CLI.

Anmerkung

Wenn Sie eine vorhandene Instance verwenden, muss ihr bereits eine Active Directory-Domäne und eine AWS Identity and Access Management-(IAM)-Rolle zugeordnet sein. Wenn Sie eine neue Instance erstellen, geben Sie eine vorhandene Active Directory-Domäne und IAM-Rolle an. Weitere Informationen finden Sie unter Verwenden der Windows-Authentifizierung mit einer Amazon-RDS-for-SQL-Server-DB-Instance.

Um die Aktivierung von SSIS abzuschließen, ordnen Sie Ihre SSIS-Optionsgruppe und Parametergruppe einer neuen oder vorhandenen DB-Instance zu:

Sie können die SSIS-Optionsgruppe und die Parametergruppe einer neuen oder vorhandenen DB-Instance zuordnen.

So erstellen Sie eine Instance mit der SSIS-Optionsgruppe und der Parametergruppe

  • Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.

    Für Linux, macOS oder Unix:

    aws rds create-db-instance \ --db-instance-identifier myssisinstance \ --db-instance-class db.m5.2xlarge \ --engine sqlserver-se \ --engine-version 13.00.5426.0.v1 \ --allocated-storage 100 \ --master-user-password secret123 \ --master-username admin \ --storage-type gp2 \ --license-model li \ --domain-iam-role-name my-directory-iam-role \ --domain my-domain-id \ --option-group-name ssis-se-2016 \ --db-parameter-group-name ssis-sqlserver-se-13

    Für Windows:

    aws rds create-db-instance ^ --db-instance-identifier myssisinstance ^ --db-instance-class db.m5.2xlarge ^ --engine sqlserver-se ^ --engine-version 13.00.5426.0.v1 ^ --allocated-storage 100 ^ --master-user-password secret123 ^ --master-username admin ^ --storage-type gp2 ^ --license-model li ^ --domain-iam-role-name my-directory-iam-role ^ --domain my-domain-id ^ --option-group-name ssis-se-2016 ^ --db-parameter-group-name ssis-sqlserver-se-13

So ändern Sie eine Instance und ordnen die SSIS-Optionsgruppe und die Parametergruppe zu

  • Führen Sie einen der folgenden Befehle aus.

    Für Linux, macOS oder Unix:

    aws rds modify-db-instance \ --db-instance-identifier myssisinstance \ --option-group-name ssis-se-2016 \ --db-parameter-group-name ssis-sqlserver-se-13 \ --apply-immediately

    Für Windows:

    aws rds modify-db-instance ^ --db-instance-identifier myssisinstance ^ --option-group-name ssis-se-2016 ^ --db-parameter-group-name ssis-sqlserver-se-13 ^ --apply-immediately

Aktivieren der S3-Integration

Um SSIS-Projektdateien (.ispac) für die Bereitstellung auf Ihren Host herunterzuladen, verwenden Sie die S3-Dateiintegration. Weitere Informationen finden Sie unter Integration einer Amazon RDS for SQL Server-DB-Instance mit Amazon S3.

Administrative Berechtigungen auf SSISDB

Wenn die Instance mit der Option SSIS erstellt oder geändert wird, ist das Ergebnis eine SSISDB-Datenbank mit den Rollen ssis_admin und ssis_logreader, die dem Masterbenutzer erteilt werden. Der Master-Benutzer verfügt über die folgenden Berechtigungen in SSISDB:

  • auf ssis_admin Rolle ändern

  • auf ssis_logreader-Rolle ändern

  • jeden Benutzer ändern

Da der Master-Benutzer ein SQL-authentifizierter Benutzer ist, können Sie den Master-Benutzer nicht zum Ausführen von SSIS-Paketen verwenden. Der Master-Benutzer kann diese Berechtigungen verwenden, um neue SSISDB-Benutzer zu erstellen und sie den Rollen ssis_admin und ssis_logreader hinzuzufügen. Dies ist nützlich, um Ihren Domänenbenutzern Zugriff für die Verwendung von SSIS zu gewähren.

Einrichten eines Windows-authentifizierten Benutzers für SSIS

Der Masterbenutzer kann das folgende Codebeispiel verwenden, um eine Windows-authentifizierte Anmeldung in SSISDB einzurichten und die erforderlichen Prozedurberechtigungen zu erteilen. Dadurch werden dem Domänenbenutzer Berechtigungen zum Bereitstellen und Ausführen von SSIS-Paketen, zum Verwenden von S3-Dateiübertragungsverfahren, zum Erstellen von Anmeldeinformationen und zum Arbeiten mit dem SQL Server-Agent-Proxy gewährt. Weitere Informationen finden Sie unter Anmeldeinformationen (Datenbank-Engine) und Erstellen eines SQL Server-Agent-Proxys in der Microsoft-Dokumentation.

Anmerkung

Sie können Windows-authentifizierten Benutzern bei Bedarf einige oder alle der folgenden Berechtigungen erteilen.

USE [SSISDB] GO CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name] ALTER ROLE [ssis_admin] ADD MEMBER [mydomain\user_name] ALTER ROLE [ssis_logreader] ADD MEMBER [mydomain\user_name] GO USE [msdb] GO CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name] GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain\user_name] with grant option GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain\user_name] WITH GRANT OPTION ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain\user_name] GO USE [master] GO GRANT ALTER ANY CREDENTIAL TO [mydomain\user_name] GO

Bereitstellen eines SSIS-Projekts

Auf RDS können Sie SSIS-Projekte nicht direkt mithilfe von SQL Server Management Studio (SSMS) oder SSIS-Verfahren bereitstellen. Verwenden Sie gespeicherte RDS-Prozeduren, um Projektdateien aus Amazon S3 herunterzuladen und anschließend bereitzustellen.

Melden Sie sich zum Ausführen der gespeicherten Prozeduren als beliebiger Benutzer an, dem Sie Berechtigungen für das Ausführen der gespeicherten Prozeduren erteilt haben. Weitere Informationen finden Sie unter Einrichten eines Windows-authentifizierten Benutzers für SSIS.

So stellen Sie das SSIS-Projekt bereit

  1. Laden Sie die Projektdatei (.ispac) herunter.

    exec msdb.dbo.rds_download_from_s3 @s3_arn_of_file='arn:aws:s3:::bucket_name/ssisproject.ispac', [@rds_file_path='D:\S3\ssisproject.ispac'], [@overwrite_file=1];
  2. Übermitteln Sie die Bereitstellungsaufgabe und stellen Sie sicher, dass Sie Folgendes beachten:

    • Der Ordner ist im SSIS-Katalog vorhanden.

    • Der Projektname stimmt mit dem Projektnamen überein, den Sie beim Entwickeln des SSIS-Projekts verwendet haben.

    exec msdb.dbo.rds_msbi_task @task_type='SSIS_DEPLOY_PROJECT', @folder_name='DEMO', @project_name='ssisproject', @file_path='D:\S3\ssisproject.ispac';

Überwachen des Status einer Bereitstellungsaufgabe

Rufen Sie die Funktion rds_fn_task_status auf, um den Status Ihrer Bereitstellungsaufgabe zu verfolgen. Dazu sind zwei Parameter erforderlich. Der erste Parameter sollte immer NULL sein, da er sich nicht auf SSIS bezieht. Der zweite Parameter akzeptiert eine Aufgaben-ID.

Um eine Liste aller Aufgaben anzuzeigen, setzen Sie den ersten Parameter auf NULL und den zweiten Parameter auf 0, wie im folgenden Beispiel gezeigt.

SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,0);

Um eine bestimmte Aufgabe zu erhalten, setzen Sie den ersten Parameter auf NULL und den zweiten Parameter auf die Aufgaben-ID, wie im folgenden Beispiel gezeigt,

SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,42);

Die rds_fn_task_status-Funktion gibt die folgenden Informationen zurück.

Ausgabeparameter

Beschreibung

task_id

Die ID der Aufgabe.

task_type

SSIS_DEPLOY_PROJECT

database_name

Gilt nicht für SSIS-Aufgaben.

% complete

Verlauf der Aufgabe als Prozentwert.

duration (mins)

Zeitdauer für die Ausführung der Aufgabe (in Minuten).

lifecycle

Der Status der Aufgabe. Die folgenden Status sind möglich:

  • CREATED – Nachdem Sie die gespeicherte Prozedur msdb.dbo.rds_msbi_task aufgerufen haben, wird eine Aufgabe erstellt und der Status wird auf CREATED gesetzt.

  • IN_PROGRESS – Nach dem Start einer Aufgabe wird der Status auf gesetzt IN_PROGRESS. Es kann bis zu fünf Minuten dauern, bis sich der Status von CREATED zu IN_PROGRESS ändert.

  • SUCCESS – Nach dem Abschluss einer Aufgabe wird der Status auf gesetzt SUCCESS.

  • ERROR – Wenn eine Aufgabe fehlschlägt, wird der Status auf gesetzt ERROR. Weitere Informationen über den Fehler können Sie der Spalte task_info entnehmen.

  • CANCEL_REQUESTED – Sobald Sie rds_cancel_task aufrufen, wird der Status der Aufgabe auf CANCEL_REQUESTED gesetzt.

  • CANCELLED – Nachdem die Aufgabe abgebrochen wurde, wird der Status der Aufgabe auf gesetzt CANCELLED.

task_info

Zusätzliche Informationen über die Aufgabe. Wenn bei der Verarbeitung ein Fehler auftritt, enthält diese Spalte Informationen zu dem Fehler.

last_updated

Datum und Uhrzeit der letzten Aktualisierung des Aufgabenstatus.

created_at

Datum und Uhrzeit, an denen die Aufgabe angelegt wurde.

S3_object_arn

Gilt nicht für SSIS-Aufgaben.

overwrite_S3_backup_file

Gilt nicht für SSIS-Aufgaben.

KMS_master_key_arn

Gilt nicht für SSIS-Aufgaben.

filepath

Gilt nicht für SSIS-Aufgaben.

overwrite_file

Gilt nicht für SSIS-Aufgaben.

task_metadata

Metadaten, die der SSIS-Aufgabe zugeordnet sind.

Verwenden von SSIS

Nachdem Sie das SSIS-Projekt im SSIS-Katalog bereitgestellt haben, können Sie Pakete direkt aus SSMS ausführen oder mithilfe des SQL Server-Agents planen. Sie müssen eine Windows-authentifizierte Anmeldung für die Ausführung von SSIS-Paketen verwenden. Weitere Informationen finden Sie unter Einrichten eines Windows-authentifizierten Benutzers für SSIS.

Festlegen von Datenbankverbindungs-Managern für SSIS-Projekte

Bei Einsatz eines Verbindungs-Managers können Sie die folgenden Authentifizierungstypen verwenden:

  • Bei lokalen Datenbankverbindungen können Sie die SQL-Authentifizierung oder die Windows-Authentifizierung verwenden. Verwenden Sie für die Windows-Authentifizierung DB_instance_name.fully_qualified_domain_name als Servername der Verbindungszeichenfolge.

    Ein Beispiel ist myssisinstance.corp-ad.example.com, wobei myssisinstance der Name der DB-Instance und corp-ad.example.com der vollqualifizierte Domänenname ist.

  • Verwenden Sie für Remoteverbindungen immer die SQL-Authentifizierung.

Erstellen eines SSIS-Proxys

Um SSIS-Pakete mit SQL Server-Agent planen zu können, erstellen Sie SSIS-Anmeldeinformationen und einen SSIS-Proxy. Führen Sie diese Prozeduren als Windows-authentifizierter Benutzer aus.

So erstellen Sie die SSIS-Anmeldeinformationen

  • Erstellen Sie die Anmeldeinformationen für den Proxy. Dazu können Sie SSMS oder die folgende SQL-Anweisung verwenden.

    USE [master] GO CREATE CREDENTIAL [SSIS_Credential] WITH IDENTITY = N'mydomain\user_name', SECRET = N'mysecret' GO
    Anmerkung

    IDENTITY muss eine domänenauthentifizierter Anmeldung sein. Ersetzen Sie mysecret durch das Passwort für die domänenauthentifizierte Anmeldung.

    Wandeln Sie bei jedem Wechsel des primären SSISDB-Hosts die SSIS-Proxy-Anmeldeinformationen ab, damit der neue Host darauf zugreifen kann.

So erstellen Sie den SSIS-Proxy

  1. Verwenden Sie die folgende SQL-Anweisung, um den Proxy zu erstellen.

    USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSIS_Proxy',@credential_name=N'SSIS_Credential',@description=N'' GO
  2. Verwenden Sie die folgende SQL-Anweisung, um anderen Benutzern den Zugriff auf den Proxy zu gewähren.

    USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSIS_Proxy',@login_name=N'mydomain\user_name' GO
  3. Verwenden Sie die folgende SQL-Anweisung, um dem SSIS-Subsystem Zugriff auf den Proxy zu gewähren.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO

So zeigen Sie den Proxy und die Berechtigungserteilungen für den Proxy an

  1. Verwenden Sie die folgende SQL-Anweisung, um die Empfänger des Proxys anzuzeigen.

    USE [msdb] GO EXEC sp_help_proxy GO
  2. Verwenden Sie die folgende SQL-Anweisung, um die Subsystemzuweisungen anzuzeigen.

    USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO

Planen eines SSIS-Pakets mit SQL Server-Agent

Nachdem Sie die Anmeldeinformationen und den Proxy erstellt und SSIS-Zugriff auf den Proxy gewährt haben, können Sie einen SQL Server-Agent-Auftrag erstellen, um das SSIS-Paket zu planen.

So planen Sie das SSIS-Paket

  • Sie können SSMS oder T-SQL zum Erstellen des SQL Server-Agent-Auftrags verwenden. Im folgenden Beispiel wird T-SQL verwendet.

    USE [msdb] GO DECLARE @jobId BINARY(16) EXEC msdb.dbo.sp_add_job @job_name=N'MYSSISJob', @enabled=1, @notify_level_eventlog=0, @notify_level_email=2, @notify_level_page=2, @delete_level=0, @category_name=N'[Uncategorized (Local)]', @job_id = @jobId OUTPUT GO EXEC msdb.dbo.sp_add_jobserver @job_name=N'MYSSISJob',@server_name=N'(local)' GO EXEC msdb.dbo.sp_add_jobstep @job_name=N'MYSSISJob',@step_name=N'ExecuteSSISPackage', @step_id=1, @cmdexec_success_code=0, @on_success_action=1, @on_fail_action=2, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'SSIS', @command=N'/ISSERVER "\"\SSISDB\MySSISFolder\MySSISProject\MySSISPackage.dtsx\"" /SERVER "\"my-rds-ssis-instance.corp-ad.company.com/\"" /Par "\"$ServerOption::LOGGING_LEVEL(Int16)\"";1 /Par "\"$ServerOption::SYNCHRONIZED(Boolean)\"";True /CALLERINFO SQLAGENT /REPORTING E', @database_name=N'master', @flags=0, @proxy_name=N'SSIS_Proxy' GO

Widerrufen des SSIS-Zugriffs vom Proxy

Sie können den Zugriff auf das SSIS-Subsystem widerrufen und den SSIS-Proxy mithilfe der folgenden gespeicherten Prozeduren löschen.

So entziehen Sie den Zugriff und löschen den Proxy

  1. Widerrufen des Teilsystemzugriffs.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
  2. Widerrufen Sie die für den erteilten Berechtigungen Proxy.

    USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSIS_Proxy',@name=N'mydomain\user_name' GO
  3. Löschen Sie den Proxy.

    USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSIS_Proxy' GO

Deaktivieren von SSIS

Um SSIS zu deaktivieren, entfernen Sie die Option SSIS aus der Optionsgruppe.

Wichtig

Durch das Entfernen der Option wird die SSISDB-Datenbank nicht gelöscht, sodass Sie die Option sicher entfernen können, ohne die SSIS-Projekte zu verlieren.

Sie können die Option SSIS nach dem Entfernen erneut aktivieren, um die SSIS-Projekte wiederzuverwenden, die zuvor im SSIS-Katalog bereitgestellt wurden.

Mit dem folgenden Verfahren wird die Option SSIS entfernt.

So entfernen Sie die SSIS-Option aus der Optionsgruppe

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.

  3. Wählen Sie die Optionsgruppe mit der Option SSIS (ssis-se-2016 in den vorherigen Beispielen).

  4. Wählen Sie Delete option (Option löschen) aus.

  5. Wählen Sie unter Löschoptionen für Zu löschende Optionen die Option SSIS aus.

  6. Wählen Sie unter Apply immediately (Sofort anwenden) die Option Yes (Ja) aus, um die Option sofort zu löschen, oder No (Nein), um sie während des nächsten Wartungsfensters zu löschen.

  7. Wählen Sie Delete (Löschen).

Mit dem folgenden Verfahren wird die Option SSIS entfernt.

So entfernen Sie die SSIS-Option aus der Optionsgruppe

  • Führen Sie einen der folgenden Befehle aus.

    Für Linux, macOS oder Unix:

    aws rds remove-option-from-option-group \ --option-group-name ssis-se-2016 \ --options SSIS \ --apply-immediately

    Für Windows:

    aws rds remove-option-from-option-group ^ --option-group-name ssis-se-2016 ^ --options SSIS ^ --apply-immediately

Löschen der SSISDB-Datenbank

Nach dem Entfernen der SSIS-Option wird die SSISDB-Datenbank nicht gelöscht. Um die SSISDB-Datenbank zu löschen, verwenden Sie die gespeicherte Prozedur rds_drop_ssis_database, nachdem Sie die SSIS-Option entfernt haben.

So löschen Sie die SSIS-Datenbank

  • Verwenden Sie die folgende gespeicherte Prozedur.

    USE [msdb] GO EXEC dbo.rds_drop_ssis_database GO

Wenn Sie nach dem Löschen der SSISDB-Datenbank die SSIS-Option erneut aktivieren, erhalten Sie einen neuen SSISDB-Katalog.