

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Optionen für die Microsoft SQL Server-Datenbank-Engine
<a name="Appendix.SQLServer.Options"></a>

In diesem Abschnitt finden Sie Beschreibungen für Optionen, die für Amazon-RDS-Instances verfügbar sind, welche die Microsoft SQL Server-DB-Engine ausführen. Damit diese Optionen aktiviert werden, fügen Sie diese einer Optionsgruppe hinzu und ordnen anschließend die Optionsgruppe Ihrer DB-Instance zu. Weitere Informationen finden Sie unter [Arbeiten mit Optionsgruppen](USER_WorkingWithOptionGroups.md). 

Wenn Sie nach optionalen Funktionen suchen, die nicht über RDS-Optionsgruppen wie SSL, Microsoft Windows-Authentifizierung oder Amazon S3-Integration hinzugefügt wurden, finden Sie Informationen unter [Zusätzliche Funktionen für Microsoft SQL Server auf Amazon RDS](User.SQLServer.AdditionalFeatures.md).

Amazon RDS unterstützt die folgenden Optionen für Microsoft SQL Server-DB-Instances. 


****  

| Option | Options-ID | Engine-Editionen | 
| --- | --- | --- | 
|  [Mit Oracle OLEDB verknüpfte Server](Appendix.SQLServer.Options.LinkedServers_Oracle_OLEDB.md)  |  `OLEDB_ORACLE`  |  SQL Server Enterprise Edition SQL Server Standard Edition  | 
|  [Native Sicherung und Backup](Appendix.SQLServer.Options.BackupRestore.md)  |  `SQLSERVER_BACKUP_RESTORE`  |  SQL Server Enterprise Edition SQL Server Standard Edition SQL Server Web Edition SQL Server Express Edition  | 
|  [Transparente Datenverschlüsselung in](Appendix.SQLServer.Options.TDE.md)  |  `TRANSPARENT_DATA_ENCRYPTION` (RDS-Konsole) `TDE`(AWS CLI und RDS-API)  |  SQL Server 2016—2022 Enterprise Edition SQL Server 2022 Standardausgabe | 
|  [SQL Server Audit](Appendix.SQLServer.Options.Audit.md)  |  `SQLSERVER_AUDIT`  |  In RDS unterstützen ab SQL Server 2016 alle Editionen von SQL Server Audits auf Serverebene, und Enterprise Edition unterstützt auch Audits auf Datenbankebene. Ab SQL Server SQL Server 2016 (13.x) SP1 unterstützen alle Editionen sowohl Audits auf Server- als auch auf Datenbankebene. Weitere Informationen finden Sie unter [SQL Server-Audit (Datenbank-Engine)](https://docs.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-database-engine?view=sql-server-2017) in der SQL Server-Dokumentation. | 
|  [SQL Server Analysis Services](Appendix.SQLServer.Options.SSAS.md)  |  `SSAS`  |  SQL Server Enterprise Edition SQL Server Standard Edition  | 
|  [SQL Server Integration Services](Appendix.SQLServer.Options.SSIS.md)  |  `SSIS`  |  SQL Server Enterprise Edition SQL Server Standard Edition  | 
|  [SQL Server Reporting Services](Appendix.SQLServer.Options.SSRS.md)  |  `SSRS`  |  SQL Server Enterprise Edition SQL Server Standard Edition  | 
|  [Microsoft Distributed Transaction Coordinator](Appendix.SQLServer.Options.MSDTC.md)  |  `MSDTC`  |  In RDS unterstützen ab SQL Server 2016 alle Editionen von SQL Server verteilte Transaktionen.  | 
|  [SQL Server-Ressourcenkontrolle](Appendix.SQLServer.Options.ResourceGovernor.md)  |  `RESOURCE_GOVERNOR`  |  SQL Server Enterprise Edition SQL Server 2022 Developer Edition  | 

## Auflisten der verfügbaren Optionen für Versionen und Editionen von SQL Server
<a name="Appendix.SQLServer.Options.Describe"></a>

Sie können den `describe-option-group-options` AWS CLI Befehl verwenden, um die verfügbaren Optionen für SQL Server-Versionen und -Editionen sowie die Einstellungen für diese Optionen aufzulisten.

Das folgende Beispiel zeigt die Optionen und Optionseinstellungen für SQL Server 2019 Enterprise Edition. Die Option `--engine-name` ist erforderlich.

```
aws rds describe-option-group-options --engine-name sqlserver-ee --major-engine-version 15.00
```

Die Ausgabe sieht in etwa folgendermaßen aus:

```
{
    "OptionGroupOptions": [
        {
            "Name": "MSDTC",
            "Description": "Microsoft Distributed Transaction Coordinator",
            "EngineName": "sqlserver-ee",
            "MajorEngineVersion": "15.00",
            "MinimumRequiredMinorEngineVersion": "4043.16.v1",
            "PortRequired": true,
            "DefaultPort": 5000,
            "OptionsDependedOn": [],
            "OptionsConflictsWith": [],
            "Persistent": false,
            "Permanent": false,
            "RequiresAutoMinorEngineVersionUpgrade": false,
            "VpcOnly": false,
            "OptionGroupOptionSettings": [
                {
                    "SettingName": "ENABLE_SNA_LU",
                    "SettingDescription": "Enable support for SNA LU protocol",
                    "DefaultValue": "true",
                    "ApplyType": "DYNAMIC",
                    "AllowedValues": "true,false",
                    "IsModifiable": true,
                    "IsRequired": false,
                    "MinimumEngineVersionPerAllowedValue": []
                },
        ...

        {
            "Name": "TDE",
            "Description": "SQL Server - Transparent Data Encryption",
            "EngineName": "sqlserver-ee",
            "MajorEngineVersion": "15.00",
            "MinimumRequiredMinorEngineVersion": "4043.16.v1",
            "PortRequired": false,
            "OptionsDependedOn": [],
            "OptionsConflictsWith": [],
            "Persistent": true,
            "Permanent": false,
            "RequiresAutoMinorEngineVersionUpgrade": false,
            "VpcOnly": false,
            "OptionGroupOptionSettings": []
        }
    ]
}
```

# Support für mit Oracle OLEDB verknüpfte Server in Amazon RDS für SQL Server
<a name="Appendix.SQLServer.Options.LinkedServers_Oracle_OLEDB"></a>

Durch die Verknüpfung von Servern mit dem Oracle Provider für OLEDB auf RDS für SQL Server können Sie auf externe Datenquellen in einer Oracle-Datenbank zugreifen. Sie können Daten aus Remote-Oracle-Datenquellen lesen und Befehle auf Remote-Oracle-Datenbankservern außerhalb Ihrer DB-Instance von RDS für SQL Server ausführen. Mit Oracle OLEDB verknüpfte Server bieten folgende Möglichkeiten:
+ Direkter Zugriff auf andere Datenquellen als SQL Server
+ Abfragen verschiedener Oracle-Datenquellen mit derselben Abfrage, ohne die Daten zu verschieben
+ Ausgabe verteilter Abfragen, Aktualisierungen, Befehle und Transaktionen für Datenquellen in einem Unternehmens-Ökosystem
+ Integration von Verbindungen mit einer Oracle-Datenbank aus der Microsoft Business Intelligence Suite (SSIS, SSRS, SSAS)
+ Migration von einer Oracle-Datenbank zu RDS für SQL Server

Sie können einen oder mehrere verknüpfte Server für Oracle auf einer vorhandenen oder einer neuen DB-Instance von RDS für SQL Server aktivieren. Anschließend können Sie externe Oracle-Datenquellen in Ihre DB-Instance integrieren.

**Contents**
+ [

## Unterstützte Versionen und Regionen
](#LinkedServers_Oracle_OLEDB.VersionRegionSupport)
+ [

## Einschränkungen und Empfehlungen
](#LinkedServers_Oracle_OLEDB.Limitations)
+ [

## Aktivieren von verknüpften Servern mit Oracle
](#LinkedServers_Oracle_OLEDB.Enabling)
  + [

### Erstellen der Optionsgruppe für OLEDB\$1ORACLE
](#LinkedServers_Oracle_OLEDB.OptionGroup)
  + [

### Hinzufügen der `OLEDB_ORACLE`-Option zur Optionsgruppe
](#LinkedServers_Oracle_OLEDB.Add)
  + [

### Ändern der `OLEDB_ORACLE`-Versionsoption zu einer anderen Version
](#LinkedServers_Oracle_OLEDB.Modify)
  + [

### Zuordnen der Optionsgruppe zu Ihrer DB-Instance
](#LinkedServers_Oracle_OLEDB.Apply)
+ [

## Ändern der Eigenschaften des OLEDB-Providers
](#LinkedServers_Oracle_OLEDB.ModifyProviderProperties)
+ [

## Ändern der Eigenschaften des OLEDB-Treibers
](#LinkedServers_Oracle_OLEDB.ModifyDriverProperties)
+ [

## Deaktivieren von verknüpften Servern mit Oracle
](#LinkedServers_Oracle_OLEDB.Disable)

## Unterstützte Versionen und Regionen
<a name="LinkedServers_Oracle_OLEDB.VersionRegionSupport"></a>

RDS für SQL Server unterstützt mit Oracle OLEDB verknüpfte Server in den folgenden Versionen für SQL Server Standard und Enterprise Edition in allen Regionen:
+ SQL Server 2022, alle Versionen
+ SQL Server 2019, alle Versionen
+ SQL Server 2017, alle Versionen

Mit Oracle OLEDB verknüpfte Server werden für die folgenden Oracle-Database-Versionen unterstützt:
+ Oracle Database 21c, alle Versionen
+ Oracle Database 19c, alle Versionen
+ Oracle Database 18c, alle Versionen

Mit Oracle OLEDB verknüpfte Server werden für die folgenden OLEDB-Oracle-Treiberversionen unterstützt:
+ 21.7
+ 21,16

## Einschränkungen und Empfehlungen
<a name="LinkedServers_Oracle_OLEDB.Limitations"></a>

Beachten Sie die folgenden Einschränkungen und Empfehlungen, die für mit Oracle OLEDB verknüpfte Server gelten:
+ Erlauben Sie Netzwerkverkehr, indem Sie der Sicherheitsgruppe für jede DB-Instance von RDS für SQL Server den entsprechenden TCP-Port hinzufügen. Wenn Sie beispielsweise einen verknüpften Server zwischen einer EC2-Oracle-DB-Instance und einer DB-Instance von RDS für SQL Server konfigurieren, müssen Sie Datenverkehr von der IP-Adresse der EC2-Oracle-DB-Instance zulassen. Außerdem müssen Sie den Datenverkehr auf dem Port zulassen, den SQL Server zum Überwachen der Datenbankkommunikation verwendet. Weitere Informationen zu Sicherheitsgruppen finden Sie unter [Zugriffskontrolle mit Sicherheitsgruppen](Overview.RDSSecurityGroups.md).
+ Führen Sie einen Neustart der DB-Instance von RDS für SQL Server durch, nachdem Sie die `OLEDB_ORACLE`-Option in Ihrer Optionsgruppe aktiviert, deaktiviert oder geändert haben. Der Optionsgruppenstatus zeigt `pending_reboot` für diese Ereignisse an und ist erforderlich. Bei Multi-AZ-Instances von RDS for SQL Server mit aktivierter Spiegelungsoption wird ein Failover erwartet, wenn die Instanz nach der Erstellung AlwaysOn oder Wiederherstellung der neuen Instanz neu gestartet wird.
+ Es wird nur die einfache Authentifizierung mit einem Benutzernamen und einem Passwort für die Oracle-Datenquelle unterstützt.
+ Open Database Connectivity (ODBC)-Treiber werden nicht unterstützt. Nur die oben aufgeführten OLEDB-Treiberversionen werden unterstützt.
+ Verteilte Transaktionen (XA) werden unterstützt. Zur Aktivierung verteilter Transaktionen aktivieren Sie die `MSDTC`-Option in der Optionsgruppe für Ihre DB-Instance und stellen Sie sicher, dass XA-Transaktionen aktiviert sind. Weitere Informationen finden Sie unter [Unterstützung für Microsoft Distributed Transaction Coordinator in RDS für SQL Server](Appendix.SQLServer.Options.MSDTC.md).
+ Das Erstellen von Datenquellennamen (DSNs), die als Abkürzung für eine Verbindungszeichenfolge verwendet werden sollen, wird nicht unterstützt.
+ Die OLEDB-Treiberverfolgung wird nicht unterstützt. Sie können erweiterte SQL-Server-Ereignisse verwenden, um OLEDB-Ereignisse zu verfolgen. Weitere Informationen finden Sie unter [Set up Extended Events in RDS für SQL Server](https://aws.amazon.com/blogs/database/set-up-extended-events-in-amazon-rds-for-sql-server/).
+ Der Zugriff auf den Ordner „Catalogs“ (Kataloge) für einen verknüpften Oracle-Server wird mit SQL Server Management Studio (SSMS) nicht unterstützt.

## Aktivieren von verknüpften Servern mit Oracle
<a name="LinkedServers_Oracle_OLEDB.Enabling"></a>

Aktivieren Sie mit Oracle verknüpfte Server, indem Sie die `OLEDB_ORACLE`-Option Ihrer DB-Instance von RDS für SQL Server hinzufügen. Verwenden Sie den folgenden Prozess:

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

1. Fügen Sie die Option `OLEDB_ORACLE` zur Optionsgruppe hinzu.

1. Wählen Sie eine Version des zu verwendenden OLEDB-Treibers aus.

1. Ordnen Sie die Optionsgruppe der DB-Instance zu.

1. Wir starten die DB-Instance neu.

### Erstellen der Optionsgruppe für OLEDB\$1ORACLE
<a name="LinkedServers_Oracle_OLEDB.OptionGroup"></a>

Um mit verknüpften Servern mit Oracle 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 das AWS-Managementkonsole oder das, um dieses Verfahren abzuschließen AWS CLI.

#### Konsole
<a name="LinkedServers_Oracle_OLEDB.OptionGroup.Console"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2019 erstellt.

**So erstellen Sie die Optionsgruppe**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. 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 eindeutig ist, z. **oracle-oledb-se-2019** B. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

   1. Geben Sie unter **Beschreibung** eine kurze Beschreibung der Optionsgruppe ein, z. B. **OLEDB\$1ORACLE option group for SQL Server SE 2019**. Die Beschreibung ist nur zur Information.

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

   1. Wählen Sie im Feld **Major Engine Version** (Engine-Hauptversion) **15.00** aus.

1. Wählen Sie **Erstellen** aus.

#### CLI
<a name="LinkedServers_Oracle_OLEDB.OptionGroup.CLI"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2019 erstellt.

**So erstellen Sie die Optionsgruppe**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-option-group \
      --option-group-name oracle-oledb-se-2019 \
      --engine-name sqlserver-se \
      --major-engine-version 15.00 \
      --option-group-description "OLEDB_ORACLE option group for SQL Server SE 2019"
  ```

  Für Windows:

  ```
  aws rds create-option-group ^
      --option-group-name oracle-oledb-se-2019 ^
      --engine-name sqlserver-se ^
      --major-engine-version 15.00 ^
      --option-group-description "OLEDB_ORACLE option group for SQL Server SE 2019"
  ```

### Hinzufügen der `OLEDB_ORACLE`-Option zur Optionsgruppe
<a name="LinkedServers_Oracle_OLEDB.Add"></a>

Verwenden Sie als Nächstes das AWS-Managementkonsole oder, AWS CLI um die `OLEDB_ORACLE` Option zu Ihrer Optionsgruppe hinzuzufügen.

#### Konsole
<a name="LinkedServers_Oracle_OLEDB.Add.Console"></a>

**So fügen Sie die Option OLEDB\$1ORACLE hinzu**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe, die Sie gerade erstellt haben, in diesem Beispiel **oracle-oledb-se-2019**.

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

1. Wählen Sie unter **Option details** (Optionsdetails) für **Option name** (Optionsname) die Option **OLEDB\$1ORACLE** aus.

1. Wählen Sie unter **Version** die Version des OLEDB-Oracle-Treibers aus, den Sie installieren möchten.

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

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

#### CLI
<a name="LinkedServers_Oracle_OLEDB.Add.CLI"></a>

**So fügen Sie die Option OLEDB\$1ORACLE hinzu**
+ Fügen Sie die Option `OLEDB_ORACLE` zur Optionsgruppe hinzu.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds add-option-to-option-group \
      --option-group-name oracle-oledb-se-2019 \
      --options OptionName=OLEDB_ORACLE, OptionVersion=21.16 \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds add-option-to-option-group ^
      --option-group-name oracle-oledb-se-2019 ^
      --options OptionName=OLEDB_ORACLE, OptionVersion=21.16 ^
      --apply-immediately
  ```

### Ändern der `OLEDB_ORACLE`-Versionsoption zu einer anderen Version
<a name="LinkedServers_Oracle_OLEDB.Modify"></a>

Um die `OLEDB_ORACLE` Optionsversion in eine andere Version zu ändern, verwenden Sie das AWS-Managementkonsole oder das AWS CLI.

#### Konsole
<a name="LinkedServers_Oracle_OLEDB.Modify.Console"></a>

**So ändern Sie die Option OLEDB\$1ORACLE**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der `OLEDB_ORACLE` Option (**oracle-oledb-se-2019** im vorherigen Beispiel).

1. Wählen Sie **Modify option** (Option ändern) aus.

1. Wählen Sie unter **Option details** (Optionsdetails) für **Option name** (Optionsname) die Option **OLEDB\$1ORACLE** aus.

1. Wählen Sie für **Version** die OLEDB-Oracle-Treiberversion aus, die Sie verwenden möchten.

1. Wählen Sie unter **Planung** aus, ob die Option sofort oder während des nächsten Wartungsfensters geändert werden soll.

1. Wählen Sie **Modify option** (Option ändern) aus.

#### CLI
<a name="LinkedServers_Oracle_OLEDB.Add.CLI"></a>

Um die `OLEDB_ORACLE`-Optionsversion zu ändern, verwenden Sie den Befehl [https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html)AWS CLI mit der Optionsgruppe und Optionsversion, die Sie verwenden möchten.

**So ändern Sie die Option OLEDB\$1ORACLE**
+   
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds add-option-to-option-group \
      --option-group-name oracle-oledb-se-2019 \
      --options OptionName=OLEDB_ORACLE, OptionVersion=21.7 \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds add-option-to-option-group ^
      --option-group-name oracle-oledb-se-2019 ^
      --options OptionName=OLEDB_ORACLE, OptionVersion=21.7 ^
      --apply-immediately
  ```

### Zuordnen der Optionsgruppe zu Ihrer DB-Instance
<a name="LinkedServers_Oracle_OLEDB.Apply"></a>

Um die `OLEDB_ORACLE` Optionsgruppe und die Parametergruppe mit Ihrer DB-Instance zu verknüpfen, verwenden Sie das AWS-Managementkonsole oder AWS CLI 

#### Konsole
<a name="LinkedServers_Oracle_OLEDB.Apply.Console"></a>

Um die Aktivierung von verknüpften Servern für Oracle abzuschließen, ordnen Sie Ihre `OLEDB_ORACLE`-Optionsgruppe einer neuen oder vorhandenen DB-Instance zu:
+ Ordnen Sie sie bei einer neuen DB-Instance zu, wenn Sie die Instance starten. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Ordnen Sie sie für eine vorhandene DB-Instance zu, indem Sie die Instance ändern. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

#### CLI
<a name="LinkedServers_Oracle_OLEDB.Apply.CLI"></a>

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

**So erstellen Sie eine Instance mit der `OLEDB_ORACLE`-Optionsgruppe und der Parametergruppe**
+ Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-db-instance \
      --db-instance-identifier mytestsqlserveroracleoledbinstance \
      --db-instance-class db.m5.2xlarge \
      --engine sqlserver-se \
      --engine-version 15.0.4236.7.v1 \
      --allocated-storage 100 \
      --manage-master-user-password \
      --master-username admin \
      --storage-type gp2 \
      --license-model li \
      --domain-iam-role-name my-directory-iam-role \
      --domain my-domain-id \
      --option-group-name oracle-oledb-se-2019 \
      --db-parameter-group-name my-parameter-group-name
  ```

  Für Windows:

  ```
  aws rds create-db-instance ^
      --db-instance-identifier mytestsqlserveroracleoledbinstance ^
      --db-instance-class db.m5.2xlarge ^
      --engine sqlserver-se ^
      --engine-version 15.0.4236.7.v1 ^
      --allocated-storage 100 ^
      --manage-master-user-password ^
      --master-username admin ^
      --storage-type gp2 ^
      --license-model li ^
      --domain-iam-role-name my-directory-iam-role ^
      --domain my-domain-id ^
      --option-group-name oracle-oledb-se-2019 ^
      --db-parameter-group-name my-parameter-group-name
  ```

**So ändern Sie eine Instance, um die `OLEDB_ORACLE`-Optionsgruppe zuzuordnen**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds modify-db-instance \
      --db-instance-identifier mytestsqlserveroracleoledbinstance \
      --option-group-name oracle-oledb-se-2019 \
      --db-parameter-group-name my-parameter-group-name \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier mytestsqlserveroracleoledbinstance ^
      --option-group-name oracle-oledb-se-2019 ^
      --db-parameter-group-name my-parameter-group-name ^
      --apply-immediately
  ```

## Ändern der Eigenschaften des OLEDB-Providers
<a name="LinkedServers_Oracle_OLEDB.ModifyProviderProperties"></a>

Sie können die Eigenschaften des OLEDB-Providers anzeigen und ändern. Nur der `master`-Benutzer kann diese Aufgabe ausführen. Alle verknüpften Server für Oracle, die auf der DB-Instance erstellt wurden, verwenden dieselben Eigenschaften dieses OLEDB-Providers. Rufen Sie die gespeicherte `sp_MSset_oledb_prop`-Prozedur auf, um die Eigenschaften des OLEDB-Providers zu ändern.

So ändern Sie die Eigenschaften des OLEDB-Providers

```
				
USE [master]
GO
EXEC sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'AllowInProcess', 1 
EXEC sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'DynamicParameters', 0
GO
```

Die folgenden Eigenschaften können geändert werden:


****  

| Name der Eigenschaft | Empfohlener Wert (1 = Ein, 0 = Aus) | Description | 
| --- | --- | --- | 
| `Dynamic parameter` | 1 | Erlaubt SQL-Platzhalter (dargestellt durch '?') in parametrisierten Abfragen. | 
| `Nested queries` | 1 | Erlaubt verschachtelte `SELECT`-Anweisungen in der `FROM`-Klausel, z. B. Unterabfragen. | 
| `Level zero only` | 0 | Nur OLEDB-Schnittstellen auf Basisebene werden für den Provider aufgerufen. | 
| `Allow inprocess` | 1 | Wenn diese Option aktiviert ist, ermöglicht Microsoft SQL Server, dass der Provider als prozessinterner Server instanziiert wird. Legen Sie diese Eigenschaft auf 1 fest, um verknüpfte Oracle-Server zu verwenden. | 
| `Non transacted updates` | 0 | Wenn ein Wert ungleich Null ist, erlaubt SQL Server Aktualisierungen. | 
| `Index as access path` | Falsch | Wenn ein Wert ungleich Null ist, versucht SQL Server, Indizes des Providers zum Abrufen von Daten zu verwenden. | 
| `Disallow adhoc access` | Falsch | Wenn diese Option festgelegt ist, erlaubt SQL Server keine Ausführung von Passthrough-Abfragen für den OLEDB-Provider. Diese Option kann zwar aktiviert werden, es ist jedoch manchmal angebracht, Passthrough-Abfragen auszuführen. | 
| `Supports LIKE operator` | 1 | Zeigt an, dass der Provider Abfragen mit dem Schlüsselwort LIKE unterstützt. | 

## Ändern der Eigenschaften des OLEDB-Treibers
<a name="LinkedServers_Oracle_OLEDB.ModifyDriverProperties"></a>

Sie können die Eigenschaften des OLEDB-Treibers anzeigen und ändern, wenn Sie einen verknüpften Server für Oracle erstellen. Nur der `master`-Benutzer kann diese Aufgabe ausführen. Treibereigenschaften definieren, wie der OLEDB-Treiber Daten verarbeitet, wenn er mit einer Remote-Oracle-Datenquelle arbeitet. Die Treibereigenschaften sind für jeden verknüpften Oracle-Server spezifisch, der auf der DB-Instance erstellt wurde. Rufen Sie die gespeicherte `master.dbo.sp_addlinkedserver`-Prozedur auf, um die Eigenschaften des OLEDB-Treibers zu ändern.

Beispiel: So erstellen Sie einen verknüpften Server und kändern die `FetchSize`-Eigenschaft des OLEDB-Treibers

```
	
EXEC master.dbo.sp_addlinkedserver
@server = N'Oracle_link2',
@srvproduct=N'Oracle',
@provider=N'OraOLEDB.Oracle',
@datasrc=N'my-oracle-test.cnetsipka.us-west-2.rds.amazonaws.com:1521/ORCL',
@provstr='FetchSize=200'
GO
```

```
	
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname=N'Oracle_link2',
@useself=N'False',
@locallogin=NULL,
@rmtuser=N'master',
@rmtpassword='Test#1234'
GO
```

**Anmerkung**  
Geben Sie aus Sicherheitsgründen ein anderes Passwort als hier angegeben an.

## Deaktivieren von verknüpften Servern mit Oracle
<a name="LinkedServers_Oracle_OLEDB.Disable"></a>

Wenn Sie mit Oracle verknüpfte Server deaktivieren möchten, entfernen Sie die `OLEDB_ORACLE`-Option aus der Optionsgruppe.

**Wichtig**  
Wenn Sie die Option entfernen, werden die vorhandenen verknüpften Serverkonfigurationen auf der DB-Instance nicht gelöscht. Sie müssen sie manuell löschen, um sie aus der DB-Instance zu entfernen.  
Sie können die `OLEDB_ORACLE`-Option nach dem Entfernen erneut aktivieren, um die zuvor auf der DB-Instance konfigurierten verknüpften Serverkonfigurationen wiederzuverwenden.

### Konsole
<a name="LinkedServers_Oracle_OLEDB.Disable.Console"></a>

Mit dem folgenden Verfahren wird die Option `OLEDB_ORACLE` entfernt.

**So entfernen Sie die OLEDB\$1ORACLE-Option aus der Optionsgruppe**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der Option `OLEDB_ORACLE` (`oracle-oledb-se-2019` in den vorherigen Beispielen).

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

1. Wählen Sie unter **Deletion options** (Löschoptionen) für **Options to delete** (Zu löschende Optionen) die Option **OLEDB\$1ORACLE** aus.

1. 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.

1. Wählen Sie **Löschen** aus.

### CLI
<a name="LinkedServers_Oracle_OLEDB.Disable.CLI"></a>

Mit dem folgenden Verfahren wird die Option `OLEDB_ORACLE` entfernt.

**So entfernen Sie die OLEDB\$1ORACLE-Option aus der Optionsgruppe**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds remove-option-from-option-group \
      --option-group-name oracle-oledb-se-2019 \
      --options OLEDB_ORACLE \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds remove-option-from-option-group ^
      --option-group-name oracle-oledb-se-2019 ^
      --options OLEDB_ORACLE ^
      --apply-immediately
  ```

# Verknüpfte Server mit Teradata ODBC in RDS für SQL Server
<a name="USER_SQLServerTeradata"></a>

Durch die Unterstützung für verknüpfte Server mit dem Teradata-ODBC-Treiber auf RDS für SQL Server können Sie auf externe Datenquellen in einer Teradata-Datenbank zugreifen. Sie können Daten aus Remote-Teradata-Datenbankservern lesen und darauf Befehle außerhalb Ihrer DB-Instance von RDS für SQL Server ausführen. Verwenden Sie verknüpfte Server mit Teradata ODBC, um die folgenden Funktionen zu aktivieren:
+ Direkter Zugriff auf andere Datenquellen als SQL Server
+ Abfragen verschiedener Teradata-Datenquellen mit derselben Abfrage, ohne die Daten zu verschieben
+ Ausgabe verteilter Abfragen, Aktualisierungen, Befehle und Transaktionen für Datenquellen in einem Unternehmens-Ökosystem
+ Integration von Verbindungen mit einer Teradata-Datenbank aus der Microsoft Business Intelligence Suite (SSIS, SSRS, SSAS)
+ Migration von einer Teradata-Datenbank zu RDS für SQL Server

Sie können einen oder mehrere verknüpfte Server für Teradata auf einer vorhandenen oder einer neuen DB-Instance von RDS für SQL Server aktivieren. Anschließend können Sie externe Teradata-Datenquellen in Ihre DB-Instance integrieren.

**Topics**
+ [

## Unterstützte Versionen und Regionen
](#USER_SQLServerTeradata.VersionRegionSupport)
+ [

## Einschränkungen und Empfehlungen
](#USER_SQLServerTeradata.LimitsandRecommendations)
+ [

## Überlegungen zur Multi-AZ-Bereitstellung
](#USER_SQLServerTeradata.MultiAZ)
+ [

# Aktivieren von verknüpften Servern mit Teradata
](USER_SQLServerTeradata.Activate.md)
+ [

# Erstellen von verknüpften Servern mit Teradata
](USER_SQLServerTeradata.CreateLinkedServers.md)
+ [

# Deaktivieren von mit Teradata verknüpften Servern
](USER_SQLServerTeradata.Deactivate.md)

## Unterstützte Versionen und Regionen
<a name="USER_SQLServerTeradata.VersionRegionSupport"></a>

RDS für SQL Server unterstützt verknüpfte Server mit Teradata ODBC in den folgenden Versionen für SQL Server Standard und Enterprise Edition in allen AWS-Regionen:
+ SQL Server 2022, alle Versionen
+ SQL Server 2019, alle Versionen
+ SQL Server 2017, alle Versionen

Die folgenden Teradata-Datenbankversionen unterstützen die Verknüpfung mit RDS für SQL Server
+ Teradata 17.20, alle Versionen

## Einschränkungen und Empfehlungen
<a name="USER_SQLServerTeradata.LimitsandRecommendations"></a>

Die folgenden Einschränkungen gelten für die Verknüpfung von Servern mit Teradata ODBC:
+ RDS für SQL Server unterstützt nur die einfache Authentifizierung mit einem Benutzernamen und einem Passwort für die Teradata-Quelle.
+ RDS für SQL Server unterstützt nur die Teradata-ODBC-Treiberversion 17.20.0.33.
+ RDS für SQL Server unterstützt keine Erstellung von Datenquellennamen (DSNs) zur Verwendung als Abkürzung für eine Verbindungszeichenfolge.
+ RDS für SQL Server unterstützt keine ODBC-Treiberverfolgung. Sie können erweiterte SQL-Server-Ereignisse verwenden, um ODBC-Ereignisse zu verfolgen. Weitere Informationen finden Sie unter [Set up Extended Events in RDS für SQL Server](https://aws.amazon.com/blogs/database/set-up-extended-events-in-amazon-rds-for-sql-server/).
+ RDS für SQL Server unterstützt keinen Zugriff auf den Katalogordner für einen verknüpften Teradata-Server mit SQL Server Management Studio (SSMS).

Beachten Sie bei der Verwendung von verknüpften Servern mit Teradata ODBC die folgenden Empfehlungen:
+ Erlauben Sie Netzwerkverkehr, indem Sie der Sicherheitsgruppe für jede DB-Instance von RDS für SQL Server den entsprechenden TCP-Port hinzufügen. Wenn Sie einen verknüpften Server zwischen einer Teradata-DB-Instance von EC2 und einer DB-Instance von RDS für SQL Server konfigurieren, müssen Sie Datenverkehr von der IP-Adresse der Teradata-DB-Instance von EC2 zulassen. Außerdem müssen Sie den Datenverkehr auf dem Port zulassen, den die DB-Instance von RDS für SQL Server zum Überwachen der Datenbankkommunikation verwendet. Weitere Informationen zu Sicherheitsgruppen finden Sie unter [Zugriffskontrolle mit Sicherheitsgruppen](Overview.RDSSecurityGroups.md).
+ Verteilte Transaktionen (XA) werden unterstützt. Zur Aktivierung verteilter Transaktionen aktivieren Sie die `MSDTC`-Option in der Optionsgruppe für Ihre DB-Instance und stellen sicher, dass XA-Transaktionen aktiviert sind. Weitere Informationen finden Sie unter [Unterstützung für Microsoft Distributed Transaction Coordinator in RDS für SQL Server](Appendix.SQLServer.Options.MSDTC.md).
+ Die verknüpfte Teradata ODBC unterstützt SSL/TLS, solange dies auf dem Teradata-Server konfiguriert ist. Weitere Informationen finden Sie unter [Enable TLS Connectivity on Teradata Vantage](https://docs.teradata.com/r/Enterprise_IntelliFlex_Lake_VMware/Teradata-Call-Level-Interface-Version-2-Reference-for-Workstation-Attached-Systems-20.00/Mainframe-TLS-Connectivity-Supplement/Enable-TLS-Connectivity-on-Teradata-Vantage).

## Überlegungen zur Multi-AZ-Bereitstellung
<a name="USER_SQLServerTeradata.MultiAZ"></a>

RDS für SQL Server repliziert derzeit keine verknüpften Server auf den gespiegelten Datenbankserver (oder den sekundären Server der Always-On-Verfügbarkeitsgruppe) in einer Multi-AZ-Bereitstellung. Wenn die verknüpften Server hinzugefügt werden, bevor die Konfiguration geändert wird, um Spiegelung oder Always-On hinzuzufügen, werden die verknüpften Server für die vorhandenen verknüpften Server kopiert.

Alternativ können Sie die verknüpften Server auf der primären Instance erstellen, ein Failover auf die Hochverfügbarkeits-Server-Instance durchführen und dann die verknüpften Server erneut erstellen, sodass sie sich auf beiden Instances von RDS für SQL Server befinden. 

# Aktivieren von verknüpften Servern mit Teradata
<a name="USER_SQLServerTeradata.Activate"></a>

Aktivieren Sie verknüpfte Server mit Teradata, indem Sie die `ODBC_TERADATA`-Option Ihrer DB-Instance von RDS für SQL Server hinzufügen. Verwenden Sie den folgenden Prozess:

**Topics**
+ [

## Erstellen der Optionsgruppe für `ODBC_TERADATA`
](#USER_SQLServerTeradata.Activate.CreateOG)
+ [

## Hinzufügen der `ODBC_TERADATA`-Option zur Optionsgruppe
](#USER_SQLServerTeradata.Activate.AddOG)
+ [

## Zuordnen der Option `ODBC_TERADATA` zu Ihrer DB-Instance
](#USER_SQLServerTeradata.Activate.AssociateOG)

## Erstellen der Optionsgruppe für `ODBC_TERADATA`
<a name="USER_SQLServerTeradata.Activate.CreateOG"></a>

Um mit verknüpften Servern mit Teradata 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 die AWS-Managementkonsole oder die AWS CLI, um diesen Prozess abzuschließen.

### Konsole
<a name="USER_SQLServerTeradata.Activate.CreateOG.Console"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2019 erstellt.

**So erstellen Sie die Optionsgruppe**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. 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-Konto nur einmal vorkommt, z. B. `teradata-odbc-se-2019`. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten. 

   1. Geben Sie unter **Beschreibung** eine kurze Beschreibung der Optionsgruppe ein.

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

   1. Wählen Sie im Feld **Major Engine Version** (Engine-Hauptversion) **15.00** aus.

1. Wählen Sie **Erstellen** aus.

### AWS CLI
<a name="USER_SQLServerTeradata.Activate.CreateOG.CLI"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2019 erstellt.

**Example**  
Für Linux, macOS oder Unix:  

```
aws rds create-option-group \
    --option-group-name teradata-odbc-se-2019 \
    --engine-name sqlserver-se \
    --major-engine-version 15.00 \
    --option-group-description "ODBC_TERADATA option group for SQL Server SE 2019"
```

**Example**  
Für Windows:  

```
aws rds create-option-group ^
    --option-group-name teradata-odbc-se-2019 ^
    --engine-name sqlserver-se ^
    --major-engine-version 15.00 ^
    --option-group-description "ODBC_TERADATA option group for SQL Server SE 2019"
```

## Hinzufügen der `ODBC_TERADATA`-Option zur Optionsgruppe
<a name="USER_SQLServerTeradata.Activate.AddOG"></a>

Verwenden Sie als Nächstes die AWS-Managementkonsole oder AWS CLI, um die Option `ODBC_Teradata` zu Ihrer Optionsgruppe hinzuzufügen.

### Konsole
<a name="USER_SQLServerTeradata.Activate.AddOG.Console"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2019 erstellt.

**So fügen Sie die Option `ODBC_TERADATA` hinzu**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie Ihre neue Optionsgruppe aus.

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

1. Unter **Optionsdetails**:

   1. Wählen Sie **ODBC\$1TERADATA** als **Optionsname**.

   1. Für `17.20.33.00` für die **Optionsversion**.

1. Wählen Sie unter „Planung“ aus, ob die Option sofort oder während des nächsten Wartungsfensters hinzugefügt werden soll.

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

### AWS CLI
<a name="USER_SQLServerTeradata.Activate.AddOG.CLI"></a>

Mit dem folgenden Verfahren wird die Option `ODBC_TERADATA` zu Ihrer Optionsgruppe hinzugefügt.

**Example**  
Für Linux, macOS oder Unix:  

```
aws rds add-option-to-option-group \
    --option-group-name teradata-odbc-se-2019 \
    --options "OptionName=ODBC_TERADATA,OptionVersion=17.20.33.00" \
    --apply-immediately
```

**Example**  
Für Windows:  

```
aws rds add-option-to-option-group ^
    --option-group-name teradata-odbc-se-2019 ^
    --options "OptionName=ODBC_TERADATA,OptionVersion=17.20.33.00" ^
    --apply-immediately
```

## Zuordnen der Option `ODBC_TERADATA` zu Ihrer DB-Instance
<a name="USER_SQLServerTeradata.Activate.AssociateOG"></a>

Verwenden Sie die AWS-Managementkonsole oder AWS CLI, um die Optionsgruppe `ODBC_TERADATA` Ihrer DB-Instance zuzuordnen.

### Konsole
<a name="USER_SQLServerTeradata.Activate.AssociateOG.Console"></a>

Um die Aktivierung von verknüpften Servern für Teradata abzuschließen, ordnen Sie Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zu:
+ Bei einer neuen DB-Instance ordnen Sie diese zu, wenn Sie die Instance starten. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Bei einer vorhandenen DB-Instance ordnen Sie diese zu, indem Sie die Instance ändern. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

### AWS CLI
<a name="USER_SQLServerTeradata.Activate.AssociateOG.CLI"></a>

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 mytestsqlserverteradataodbcinstance \
    --db-instance-class db.m5.2xlarge \
    --engine sqlserver-se \
    --engine-version 15.00 \
    --license-model license-included \
    --allocated-storage 100 \
    --master-username admin \
    --master-user-password password \
    --storage-type gp2 \
    --option-group-name teradata-odbc-se-2019
```

Für Windows:

```
aws rds create-db-instance ^
    --db-instance-identifier mytestsqlserverteradataodbcinstance ^
    --db-instance-class db.m5.2xlarge ^
    --engine sqlserver-se ^
    --engine-version 15.00 ^
    --license-model license-included ^ 
    --allocated-storage 100 ^
    --master-username admin ^
    --master-user-password password ^
    --storage-type gp2 ^
    --option-group-name teradata-odbc-se-2019
```

So ändern Sie eine Instance und ordnen die neue Optionsgruppe zu:

Für Linux, macOS oder Unix:

```
aws rds modify-db-instance \
    --db-instance-identifier mytestsqlserverteradataodbcinstance \
    --option-group-name teradata-odbc-se-2019 \
    --apply-immediately
```

Für Windows:

```
aws rds modify-db-instance ^
    --db-instance-identifier mytestsqlserverteradataodbcinstance ^
    --option-group-name teradata-odbc-se-2019 ^
    --apply-immediately
```

# Erstellen von verknüpften Servern mit Teradata
<a name="USER_SQLServerTeradata.CreateLinkedServers"></a>

Führen Sie die folgenden Befehle aus, um einen verknüpften Server mit Teradata zu erstellen:

```
EXECUTE master.dbo.sp_addlinkedserver 
    @server = N'LinkedServer_NAME', 
    @srvproduct=N'', 
    @provider=N'MSDASQL', 
    @provstr=N'"PROVIDER=MSDASQL;DRIVER={Teradata Database ODBC Driver 17.20};
                DBCName=Server;UID=user_name;PWD=user_password;
                UseDataEncryption=YES/NO;SSLMODE=PREFER/ALLOW/DISABLE>;"', 
    @catalog='database'
```

```
EXECUTE master.dbo.sp_addlinkedsrvlogin 
    @rmtsrvname = N'LinkedServer_NAME', 
    @locallogin = NULL , 
    @useself = N'False', 
    @rmtuser = N'user_name', 
    @rmtpassword = N'user_password'
```

Ein Beispiel für die oben genannten Befehle finden Sie hier:

```
EXECUTE master.dbo.sp_addlinkedserver 
    @server = N'LinkedServerToTeradata', 
    @srvproduct=N'', 
    @provider=N'MSDASQL', 
    @provstr=N'"PROVIDER=MSDASQL;DRIVER={Teradata Database ODBC Driver 17.20};
                DBCName=my-teradata-test.cnetsipka.us-west-2.rds.amazonaws.com;
                UID=master;
                PWD=Test#1234;
                UseDataEncryption=YES;
                SSLMODE=PREFER;"', 
    @catalog='MyTestTeradataDB'

EXECUTE master.dbo.sp_addlinkedsrvlogin 
    @rmtsrvname = N'LinkedServerToTeradata', 
    @locallogin = NULL , 
    @useself = N'False', 
    @rmtuser = N'master', 
    @rmtpassword = N'Test#1234'
```

**Anmerkung**  
Geben Sie aus Sicherheitsgründen ein anderes Passwort als hier angegeben an.

# Deaktivieren von mit Teradata verknüpften Servern
<a name="USER_SQLServerTeradata.Deactivate"></a>

Wenn Sie mit Teradata verknüpfte Server deaktivieren möchten, entfernen Sie die `ODBC_TERADATA`-Option aus der Optionsgruppe.

**Wichtig**  
Wenn Sie die Option löschen, werden die vorhandenen verknüpften Serverkonfigurationen auf der DB-Instance nicht gelöscht. Sie müssen sie manuell löschen, um sie aus der DB-Instance zu entfernen.  
Sie können die `ODBC_TERADATA`-Option nach dem Entfernen erneut aktivieren, um die zuvor auf der DB-Instance konfigurierten verknüpften Serverkonfigurationen wiederzuverwenden.

## Konsole
<a name="USER_SQLServerTeradata.Deactivate.Console"></a>

So entfernen Sie die `ODBC_TERADATA`-Option aus der Optionsgruppe

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der `ODBC_TERADATA`-Option. 

1. Wählen Sie **Delete (Löschen)**.

1. Wählen Sie unter **Löschoptionen** für **Optionen zum Löschen** die Option `ODBC_TERADATA` aus.

1. 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.

1. Wählen Sie **Delete (Löschen)**.

## AWS CLI
<a name="USER_SQLServerTeradata.Deactivate.CLI"></a>

Mit dem folgenden Befehl wird die Option `ODBC_TERADATA` entfernt.

Für Linux, macOS oder Unix:

```
aws rds remove-option-from-option-group \
    --option-group-name teradata-odbc-se-2019 \
    --options ODBC_TERADATA \
    --apply-immediately
```

Für Windows:

```
aws rds remove-option-from-option-group ^
    --option-group-name teradata-odbc-se-2019 ^
    --options ODBC_TERADATA ^
    --apply-immediately
```

# Unterstützung für native Sicherung und Backup in SQL Server
<a name="Appendix.SQLServer.Options.BackupRestore"></a>

Durch die Verwendung der nativen Sicherungen und Wiederherstellungen für SQL Server-Datenbanken können Sie eine differenzielle oder vollständige Sicherung Ihrer lokalen Datenbank erstellen und die Sicherungsdateien auf Amazon S3 speichern. Sie können die Wiederherstellung dann auf einer vorhandenen Amazon-RDS-DB-Instance durchführen, auf der SQL Server ausgeführt wird. Des Weiteren können Sie eine RDS für SQL Server-Datenbank sichern, in Amazon S3 speichern und an anderen Speicherorten wiederherstellen. Darüber hinaus können Sie die Sicherung auf einem lokalen Server oder einer anderen Amazon RDS DB-Instance mit SQL Server wiederherstellen. Weitere Informationen finden Sie unter [Importieren und Exportieren von SQL-Server-Datenbanken mithilfe nativer Sicherung und Wiederherstellung](SQLServer.Procedural.Importing.md).

Amazon RDS unterstützt die native Sicherung und Backup von Microsoft SQL Server-Datenbanken mithilfe von Dateien für differenzielle und vollständige Sicherungen (BAK-Dateien).

## Hinzufügen der Option „Native Sicherung und Backup“
<a name="Appendix.SQLServer.Options.BackupRestore.Add"></a>

Der allgemeine Prozess zum Hinzufügen der nativen Sicherungs- und Wiederherstellungsoption zu einer DB-Instance ist der folgende:

1. Erstellen Sie eine neue Optionsgruppe oder kopieren oder ändern Sie eine bestehende Optionsgruppe.

1. Fügen Sie die Option `SQLSERVER_BACKUP_RESTORE` zur Optionsgruppe hinzu.

1. Verknüpfen Sie eine AWS Identity and Access Management (IAM)-Rolle mit der Option. Die IAM-Rolle muss Zugriff auf einen S3-Bucket haben, um die Datenbanksicherungen zu speichern.

   Das heißt, die Option muss als Optionseinstellung einen gültigen Amazon-Ressourcennamen (ARN) im Format habe `arn:aws:iam::account-id:role/role-name`. Weitere Informationen finden Sie unter [Amazon-Ressourcennamen (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam) im *Allgemeine AWS-Referenz.*

   An die IAM-Rolle muss zudem eine Vertrauensbeziehung und eine Berechtigungsrichtlinie angehängt sein. Die Vertrauensbeziehung ermöglicht es RDS, die Rolle zu übernehmen, und die Berechtigungsrichtlinie definiert die Aktionen, welche die Rolle ausführen kann. Weitere Informationen finden Sie unter [Manuelles Erstellen einer IAM-Rolle für native Backups und Wiederherstellungen](SQLServer.Procedural.Importing.Native.Enabling.md#SQLServer.Procedural.Importing.Native.Enabling.IAM).

1. Ordnen Sie die Optionsgruppe der DB-Instance zu.

Nachdem Sie die native Sicherungs- und Wiederherstellungsoption hinzugefügt haben, müssen Sie Ihre DB-Instance nicht neu starten. Sobald die Optionsgruppe aktiv ist, können Sie sofort mit dem Sichern und Wiederherstellen beginnen.

### Konsole
<a name="Add.Native.Backup.Restore.Console"></a>

**So fügen Sie die native Sicherungs- und Wiederherstellungsoption hinzu:**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Erstellen Sie eine neue Optionsgruppe oder verwenden Sie eine bestehende Optionsgruppe. Informationen zum Erstellen einer benutzerdefinierten DB-Optionsgruppe finden Sie unter [Erstellen einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

   Um eine vorhandene Optionsgruppe zu verwenden, gehen Sie zum nächsten Schritt über.

1. Fügen Sie der Optionsgruppe die Option **SQLSERVER\$1BACKUP\$1RESTORE** hinzu. Weitere Informationen über das Hinzufügen von Optionen finden Sie unter [Hinzufügen einer Option zu einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

1. Führen Sie eine der folgenden Aufgaben aus:
   + Um eine vorhandene IAM-Rolle und Amazon S3-Einstellungen zu verwenden, wählen Sie eine vorhandene IAM-Rolle für **IAM Role (IAM-Rolle)**. Wenn Sie eine vorhandene IAM-Rolle verwenden, verwendet RDS die für diese Rolle konfigurierten Amazon S3-Einstellungen.
   + Um eine neue Rolle zu erstellen und neue Amazon S3-Einstellungen zu konfigurieren, gehen Sie wie folgt vor: 

     1. Wählen Sie für **IAM Role (IAM-Rolle)** die Option **Create a New Role (Neue Rolle erstellen)** aus.

     1. Wählen Sie für **S3-Bucket-Name**, einen vorhandenen S3-Bucket aus der Liste aus.

     1. Geben Sie unter **S3-Ordnerpfad-Präfix (optional)** ein Präfix an, das für die in Ihrem Amazon S3-Bucket gespeicherten Dateien verwendet werden soll. 

        Dieses Präfix kann einen Dateipfad beinhalten, muss es aber nicht. Wenn Sie ein Präfix angeben, hängt RDS dieses Präfix an alle Sicherungsdateien an. RDS verwendet dann das Präfix während einer Wiederherstellung, um verwandte Dateien zu identifizieren und irrelevante Dateien zu ignorieren. Beispielsweise können Sie den S3-Bucket für andere Zwecke als das Speichern von Backup-Dateien verwenden. In diesem Fall können Sie das Präfix verwenden, um RDS eine native Sicherung und Backup nur für einen bestimmten Ordner und seine Unterordner durchführen zu lassen.

        Wenn Sie das Präfix leer lassen, verwendet RDS kein Präfix, um Backup-Dateien oder wiederherzustellende Dateien zu identifizieren. Infolgedessen versucht RDS bei einer Wiederherstellung mit mehreren Dateien, jede Datei in jedem Ordner des S3-Buckets wiederherzustellen.

     1. Für **Verschlüsselung aktivieren** wählen Sie das Käastchen aus, um die Sicherungsdatei zu verschlüsseln. Lassen Sie das Kontrollkästchen deaktiviert (Standardeinstellung), damit die Sicherungsdatei unverschlüsselt ist.

        Wenn Sie **Enable encryption (Verschlüsselung aktivieren)** gewählt haben, wählen Sie einen Verschlüsselungscode für **AWS KMS key** aus. Weitere Informationen zu Verschlüsselungsschlüsseln finden Sie unter [Erste Schritte](https://docs.aws.amazon.com/kms/latest/developerguide/getting-started.html) im *AWS Key Management Service-Entwicklerhandbuch*.

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

1. Ordnen Sie die Optionsgruppe einer neuen oder bestehenden DB-Instance zu:
   + Weisen Sie bei einer neuen DB-Instance die Optionsgruppe beim Starten der Instance zu. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md). 
   + Weisen Sie bei einer bestehenden DB-Instance die Optionsgruppe zu, indem Sie die Instance ändern und die neue Optionsgruppe anhängen. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md). 

### CLI
<a name="Add.Native.Backup.Restore.CLI"></a>

Dieses Verfahren geht von den folgenden Annahmen aus:
+ Sie fügen die Option SQLSERVER\$1BACKUP\$1RESTORE zu einer bereits vorhandenen Optionsgruppe hinzu. Weitere Informationen über das Hinzufügen von Optionen finden Sie unter [Hinzufügen einer Option zu einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).
+ Sie verknüpfen die Option mit einer bereits vorhandenen IAM-Rolle, die Zugriff auf einen S3-Bucket zum Speichern der Sicherungen hat.
+ Sie wenden die Optionsgruppe auf eine bereits existierende DB-Instance an. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md). 

**So fügen Sie die native Sicherungs- und Wiederherstellungsoption hinzu:**

1. Fügen Sie die Option `SQLSERVER_BACKUP_RESTORE` zur Optionsgruppe hinzu.  
**Example**  

   Für Linux, macOS oder Unix:

   ```
   aws rds add-option-to-option-group \
   	--apply-immediately \
   	--option-group-name mybackupgroup \
   	--options "OptionName=SQLSERVER_BACKUP_RESTORE, \
   	  OptionSettings=[{Name=IAM_ROLE_ARN,Value=arn:aws:iam::account-id:role/role-name}]"
   ```

   Für Windows:

   ```
   aws rds add-option-to-option-group ^
   	--option-group-name mybackupgroup ^
   	--options "[{\"OptionName\": \"SQLSERVER_BACKUP_RESTORE\", ^
   	\"OptionSettings\": [{\"Name\": \"IAM_ROLE_ARN\", ^
   	\"Value\": \"arn:aws:iam::account-id:role/role-name"}]}]" ^
   	--apply-immediately
   ```
**Anmerkung**  
Bei Verwendung der Windows-Befehlszeile müssen doppelte Anführungszeichen (") im JSON-Code mit einem umgekehrten Schrägstrich (\$1) als Escape-Zeichen versehen werden.

1. Wenden Sie die Optionsgruppe auf die DB-Instance an.  
**Example**  

   Für Linux, macOS oder Unix:

   ```
   aws rds modify-db-instance \
   	--db-instance-identifier mydbinstance \
   	--option-group-name mybackupgroup \
   	--apply-immediately
   ```

   Für Windows:

   ```
   aws rds modify-db-instance ^
   	--db-instance-identifier mydbinstance ^
   	--option-group-name mybackupgroup ^
   	--apply-immediately
   ```

## Einstellungen für Native Sicherungs- und Wiederherstellungsoption ändern
<a name="Appendix.SQLServer.Options.BackupRestore.ModifySettings"></a>

Nachdem Sie die native Sicherungs- und Wiederherstellungsoption aktiviert haben, können Sie die Einstellungen für die Option ändern. Weitere Informationen über das Ändern von Optionseinstellungen finden Sie unter [Ändern einer Optionseinstellung](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption).

## Entfernen der Nativen Sicherungs- und Wiederherstellungsoption
<a name="Appendix.SQLServer.Options.BackupRestore.Remove"></a>

Sie können die native Sicherung und Backup deaktivieren, indem Sie die Option aus Ihrer DB-Instance entfernen. Nachdem Sie die native Sicherungs- und Wiederherstellungsoption entfernt haben, müssen Sie Ihre DB-Instance nicht neu starten. 

Um die native Sicherungs- und Wiederherstellungsoption aus einer DB-Instance zu entfernen, führen Sie einen der folgenden Schritte aus: 
+ Entfernen Sie die -Option aus der zugehörigen Optionsgruppe. Diese Änderung wirkt sich auf alle DB-Instances aus, welche die betreffende Optionsgruppe verwenden. Weitere Informationen finden Sie unter [Entfernen einer Option aus einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Ändern Sie die DB-Instance und geben Sie eine andere Optionsgruppe an, welche die native Sicherungs- und Wiederherstellungsoption nicht enthält. Diese Änderung betrifft eine einzelne DB-Instance. Sie können die (leere) Standardoptionsgruppe oder eine andere benutzerdefinierte Optionsgruppe angeben. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md). 

# Unterstützung für transparente Datenverschlüsselung in SQL Server
<a name="Appendix.SQLServer.Options.TDE"></a>

Amazon RDS unterstützt die Verwendung von transparenter Datenverschlüsselung (Transparent Data Encryption, TDE), um gespeicherte Daten auf Ihren DB-Instances mit Microsoft SQL Server zu verschlüsseln. TDE verschlüsselt die Daten automatisch, bevor sie in den Speicher geschrieben werden, und entschlüsselt sie automatisch, wenn die Daten aus dem Speicher gelesen werden. 

Amazon RDS unterstützt TDE für die folgenden SQL Server-Versionen und -Editionen:
+ SQL Server 2022 Standard- und Enterprise-Editionen
+ SQL Server 2019: Standard- und Enterprise Editions
+ SQL Server 2017 Enterprise Edition
+ SQL Server 2016 Enterprise Edition

**Anmerkung**  
RDS für SQL Server unterstützt keine TDE für schreibgeschützte Datenbanken.

Transparent Data Encryption für SQL Server verwaltet Verschlüsselungsschlüssel durch die Verwendung einer zweistufigen Schlüsselarchitektur. Zum Schutz der Datenverschlüsselungsschlüssel wird ein Zertifikat verwendet, das aus dem Datenbank-Hauptschlüssel generiert wird. Der Datenbankverschlüsselungsschlüssel führt die eigentliche Verschlüsselung und Entschlüsselung der Daten auf der Benutzerdatenbank aus. Amazon RDS sichert und verwaltet den Datenbank-Hauptschlüssel und das TDE-Zertifikat.

Transparent Data Encryption wird in Szenarien verwendet, in denen Sie sensible Daten verschlüsseln müssen. So beispielsweise, wenn Sie einem Drittanbieter Datendateien und Sicherungen zur Verfügung stellen möchten, oder in Fällen, oder in denen es um sicherheitsbezogene Fragen zur Einhaltung gesetzlicher Vorschriften geht. Sie können die Systemdatenbanken für SQL Server nicht verschlüsseln, wie z. B. `model`- oder `master`-Datenbanken.

Eine ausführliche Diskussion über Transparent Data Encryption ist nicht Gegenstand dieses Leitfadens, aber Sie sollten unbedingt die Sicherheitsstärken und -schwächen der einzelnen Verschlüsselungsalgorithmen und Schlüssel verstehen. Weitere Informationen zu transparenter Datenverschlüsselung für SQL Server finden Sie unter [Transparent Data Encryption (TDE)](http://msdn.microsoft.com/en-us/library/bb934049.aspx) auf der Microsoft-Website.

**Topics**
+ [

## Aktivieren von TDE für RDS für SQL Server
](#TDE.Enabling)
+ [

# Verschlüsseln von Daten in RDS for SQL Server
](TDE.Encrypting.md)
+ [

# Sichern und Wiederherstellen von TDE-Zertifikaten in RDS für SQL Server
](TDE.BackupRestoreRDS.md)
+ [

# Sichern und Wiederherstellen von TDE-Zertifikaten für lokale Datenbanken
](TDE.BackupRestoreOnPrem.md)
+ [

# Deaktivieren von TDE für RDS for SQL Server
](TDE.Disabling.md)

## Aktivieren von TDE für RDS für SQL Server
<a name="TDE.Enabling"></a>

Wenn Sie Transparent Data Encryption für eine DB-Instance von RDS für SQL Server aktivieren möchten, geben Sie die TDE-Option in einer RDS-Optionsgruppe an, die dieser DB-Instance zugeordnet ist:

1. Bestimmen Sie, ob Ihre DB-Instance bereits mit einer Optionsgruppe verknüpft ist, die über die Option TDE verfügt. Um die Optionsgruppe anzuzeigen, der eine DB-Instance zugeordnet ist, verwenden Sie die RDS-Konsole, den [describe-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) AWS CLI Befehl oder die API-Operation [Describe DBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html).

1.  Wenn die DB-Instance keiner Optionsgruppe zugeordnet ist, für die TDE aktiviert ist, haben Sie zwei Optionen. Sie können eine Optionsgruppe erstellen und die Option TDE hinzufügen oder Sie können die zugeordnete Optionsgruppe abändern und sie ihr hinzufügen.
**Anmerkung**  
In der RDS-Konsole heißt die Option `TRANSPARENT_DATA_ENCRYPTION`. In der AWS CLI und der RDS-API ist sie benannt`TDE`.

   Weitere Informationen zum Erstellen oder Ändern einer Optionsgruppe finden Sie unter [Arbeiten mit Optionsgruppen](USER_WorkingWithOptionGroups.md). Weitere Informationen zum Hinzufügen einer Option zu einer Optionsgruppe finden Sie unter [Hinzufügen einer Option zu einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

1.  Ordnen Sie der DB-Instance eine Optionsgruppe zu, die über die Option TDE verfügt. Weitere Informationen zum Zuordnen einer DB-Instance zu einer Optionsgruppe finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

### Überlegungen zu Optionsgruppen
<a name="TDE.Options"></a>

Die TDE-Option ist eine persistente Option. Sie können sie nur dann aus einer Optionsgruppe entfernen, wenn keine DB-Instances und Sicherungen mehr mit der Optionsgruppe verknüpft sind. Sobald Sie die TDE-Option einer Optionsgruppe hinzufügen, kann die Optionsgruppe nur mit DB-Instances verknüpft werden, die TDE verwenden. Weitere Information zu persistenten Optionen in einer Optionsgruppe, finden Sie unter [Übersicht über die Optionsgruppen](USER_WorkingWithOptionGroups.md#Overview.OptionGroups). 

Da die Option TDE eine persistente Option ist, kann es zu einem Konflikt zwischen der Optionsgruppe und einer zugehörigen DB-Instance kommen. In folgenden Situationen können Konflikte auftreten:
+ Die aktuelle Optionsgruppe verfügt über die TDE-Option. Sie ersetzen sie durch eine Optionsgruppe, welche die TDE-Option nicht enthält.
+ Sie stellen von einem DB-Snapshot auf eine neue DB-Instance wieder her, die keine Optionsgruppe mit der TDE-Option enthält. Weitere Informationen zu diesem Szenario finden Sie unter [Überlegungen zu Optionsgruppen](USER_CopySnapshot.md#USER_CopySnapshot.Options). 

### Überlegungen zur SQL Server-Performance
<a name="TDE.Perf"></a>

Die Leistung einer SQL-Server-DB-Instance kann durch Transparent Data Encryption beeinträchtigt werden.

Die Performance für unverschlüsselte Datenbanken kann ebenfalls beeinträchtigt werden, wenn sich die Datenbanken auf einer DB-Instance befinden, die mindestens eine verschlüsselte Datenbank besitzt. Daher empfehlen wir Ihnen, verschlüsselte und unverschlüsselte Datenbanken auf getrennten DB-Instances zu halten.

# Verschlüsseln von Daten in RDS for SQL Server
<a name="TDE.Encrypting"></a>

Wenn die TDE-Option einer Optionsgruppe hinzugefügt wird, generiert Amazon RDS ein Zertifikat, das im Verschlüsselungsprozess verwendet wird. Sie können das Zertifikat dann verwenden, um SQL-Anweisungen auszuführen, die Daten in einer Datenbank auf der DB-Instance verschlüsseln.

Das folgende Beispiel verwendet das von RDS erstellte Zertifikat genannt `RDSTDECertificateName` welches verwendet wird um eine Datenbank genannt `myDatabase`zu verschlüsseln.

```
 1. ---------- Turning on TDE -------------
 2. 
 3. -- Find an RDS TDE certificate to use
 4. USE [master]
 5. GO
 6. SELECT name FROM sys.certificates WHERE name LIKE 'RDSTDECertificate%'
 7. GO
 8. 
 9. USE [myDatabase]
10. GO
11. -- Create a database encryption key (DEK) using one of the certificates from the previous step
12. CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_256
13. ENCRYPTION BY SERVER CERTIFICATE [RDSTDECertificateName]
14. GO
15. 
16. -- Turn on encryption for the database
17. ALTER DATABASE [myDatabase] SET ENCRYPTION ON
18. GO
19. 
20. -- Verify that the database is encrypted
21. USE [master]
22. GO
23. SELECT name FROM sys.databases WHERE is_encrypted = 1
24. GO
25. SELECT db_name(database_id) as DatabaseName, * FROM sys.dm_database_encryption_keys
26. GO
```

Wie lange die Verschlüsselung einer SQL Server-Datenbank mit TDE dauert, ist von mehreren Faktoren abhängig. Dazu gehören die Größe der DB-Instance, ob bereitgestellter IOPS-Speicher für die Instance verwendet wird, die Datenmenge und andere Faktoren.

# Sichern und Wiederherstellen von TDE-Zertifikaten in RDS für SQL Server
<a name="TDE.BackupRestoreRDS"></a>

RDS für SQL Server bietet gespeicherte Prozeduren zum Sichern, Wiederherstellen und Löschen von TDE-Zertifikaten. RDS für SQL Server bietet auch eine Funktion zum Anzeigen wiederhergestellter Benutzer-TDE-Zertifikate.

Benutzer-TDE-Zertifikate werden verwendet, um Datenbanken in RDS für SQL Server wiederherzustellen, die lokal sind und TDE aktiviert haben. Diese Zertifikate haben das Präfix `UserTDECertificate_`. Nach dem Wiederherstellen von Datenbanken und bevor sie zur Verwendung verfügbar gemacht werden, ändert RDS die Datenbanken, für die TDE aktiviert ist, so, dass RDS-generierte TDE-Zertifikate verwenden werden können. Diese Zertifikate haben das Präfix `RDSTDECertificate`.

Benutzer-TDE-Zertifikate bleiben auf der DB-Instance von RDS für SQL Server gespeichert, es sei denn, Sie entfernen sie mit der gespeicherten Prozedur `rds_drop_tde_certificate`. Weitere Informationen finden Sie unter [Entfernen wiederhergestellter TDE-Zertifikate](#TDE.BackupRestoreRDS.Drop).

Sie können ein Benutzer-TDE-Zertifikat verwenden, um andere Datenbanken aus der Quell-DB-Instance wiederherzustellen. Die wiederherzustellenden Datenbanken müssen dasselbe TDE-Zertifikat verwenden und TDE aktiviert haben. Sie müssen das entsprechende Zertifikat nicht erneut importieren (wiederherstellen). 

**Topics**
+ [

## Voraussetzungen
](#TDE.BackupRestoreRDS.Prereqs)
+ [

## Einschränkungen
](#TDE.Limitations)
+ [

## Sichern eines TDE-Zertifikats
](#TDE.BackupRestoreRDS.Backup)
+ [

## Wiederherstellen eines TDE-Zertifikats
](#TDE.BackupRestoreRDS.Restore)
+ [

## Anzeigen wiederhergestellter TDE-Zertifikate
](#TDE.BackupRestoreRDS.Show)
+ [

## Entfernen wiederhergestellter TDE-Zertifikate
](#TDE.BackupRestoreRDS.Drop)

## Voraussetzungen
<a name="TDE.BackupRestoreRDS.Prereqs"></a>

Bevor Sie TDE-Zertifikate in RDS für SQL Server sichern oder wiederherstellen können, müssen Sie die folgenden Schritte ausführen. Die ersten drei sind in [Einrichtung für native Backups und Wiederherstellungen](SQLServer.Procedural.Importing.Native.Enabling.md) beschrieben.

1. Erstellen Sie allgemeine Amazon S3 S3-Buckets oder Verzeichnis-Buckets zum Speichern von Dateien zum Sichern und Wiederherstellen.

   Es wird empfohlen, separate Buckets für Datenbanksicherungen und für TDE-Zertifikatssicherungen zu verwenden.

1. Erstellen Sie eine IAM-Rolle zum Sichern und Wiederherstellen von Dateien.

   Die IAM-Rolle muss sowohl ein Benutzer als auch ein Administrator für AWS KMS key sein.

   Bei der Verwendung von Verzeichnis-Buckets sind keine zusätzlichen Berechtigungen erforderlich, [Manuelles Erstellen einer IAM-Rolle für native Backups und Wiederherstellungen](SQLServer.Procedural.Importing.Native.Enabling.md#SQLServer.Procedural.Importing.Native.Enabling.IAM) mit Ausnahme der Berechtigungen, die für Verzeichnis-Buckets erforderlich sind.

   Bei der Verwendung von S3-Ressourcen benötigt die IAM-Rolle zusätzlich zu den Berechtigungen, die für erforderlich sind, auch die folgenden Berechtigungen: [Manuelles Erstellen einer IAM-Rolle für native Backups und Wiederherstellungen](SQLServer.Procedural.Importing.Native.Enabling.md#SQLServer.Procedural.Importing.Native.Enabling.IAM)
   + `s3:GetBucketAcl`, `s3:GetBucketLocation` und `s3:ListBucket` in der S3-Bucket-Ressource

1. Fügen Sie die Option `SQLSERVER_BACKUP_RESTORE` einer Optionsgruppe auf Ihrer DB-Instance hinzu.

   Dies gilt zusätzlich zu der Option `TRANSPARENT_DATA_ENCRYPTION` (`TDE`).

1. Stellen Sie sicher, dass Sie einen symmetrischen KMS-Verschlüsselungsschlüssel zur Verfügung haben. Ihnen stehen folgende Optionen zur Verfügung:
   + Wenn ein KMS-Schlüssel in Ihrem Konto vorhanden ist, können Sie diesen verwenden. Es sind keine weiteren Maßnahmen erforderlich.
   + Wenn Sie keinen vorhandenen symmetrischen KMS-Verschlüsselungsschlüssel in Ihrem Konto haben, erstellen Sie einen KMS-Schlüssel, indem Sie den Anweisungen unter [Erstellen von Schlüsseln](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) im *AWS Key Management Service -Entwicklerhandbuch* folgen.

1. Aktivieren Sie die Amazon-S3-Integration, um Dateien zwischen der DB-Instance und Amazon S3 zu übertragen.

   Weitere Informationen zum Aktivieren der Amazon-S3-Integration finden Sie unter [Integration einer Amazon RDS für SQL Server-DB-Instance mit Amazon S3](User.SQLServer.Options.S3-integration.md).

   Beachten Sie, dass Verzeichnis-Buckets für die S3-Integration nicht unterstützt werden. Dieser Schritt ist nur für [Sichern und Wiederherstellen von TDE-Zertifikaten für lokale Datenbanken](TDE.BackupRestoreOnPrem.md) erforderlich.

## Einschränkungen
<a name="TDE.Limitations"></a>

Die Verwendung von gespeicherten Prozeduren zum Sichern und Wiederherstellen von TDE-Zertifikaten unterliegt folgenden Einschränkungen:
+ Beide Optionen, sowohl `SQLSERVER_BACKUP_RESTORE` als auch `TRANSPARENT_DATA_ENCRYPTION` (`TDE`), müssen der Optionsgruppe hinzugefügt werden, die mit Ihrer DB-Instance verbunden ist.
+ Sicherung und Wiederherstellung von TDE-Zertifikaten werden auf Multi-AZ-DB-Instances nicht unterstützt.
+ Backup- und Wiederherstellungsaufgaben für das TDE-Zertifikat können nicht abgebrochen werden.
+ Sie können kein Benutzer-TDE-Zertifikat für die TDE-Verschlüsselung einer anderen Datenbank auf Ihrer DB-Instance von RDS für SQL Server verwenden. Sie können damit nur andere Datenbanken von der Quell-DB-Instance wiederherstellen, bei denen TDE aktiviert ist und die dasselbe TDE-Zertifikat verwenden.
+ Sie können nur Benutzer-TDE-Zertifikate löschen.
+ Die maximale Anzahl von Benutzer-TDE-Zertifikaten, die in RDS unterstützt werden, beträgt 10. Wenn die Anzahl 10 überschreitet, entfernen Sie nicht verwendete TDE-Zertifikate und versuchen Sie es erneut.
+ Der Zertifikatsname darf nicht leer oder null sein.
+ Beim Wiederherstellen eines Zertifikats darf der Zertifikatname das Schlüsselwort `RDSTDECERTIFICATE` nicht enthalten und muss mit dem Präfix `UserTDECertificate_` beginnen.
+ Der `@certificate_name`-Parameter darf nur die folgenden Zeichen enthalten: a–z, 0–9, @, \$1, \$1 und Unterstrich (\$1).
+ Die Dateierweiterungen für `@certificate_file_s3_arn` muss .cer (Groß-/Kleinschreibung wird nicht berücksichtigt) lauten.
+ Die Dateierweiterungen für `@private_key_file_s3_arn` muss .pvk (Groß-/Kleinschreibung wird nicht berücksichtigt) lauten.
+ Die S3-Metadaten für die private Schlüsseldatei müssen das Tag `x-amz-meta-rds-tde-pwd` enthalten. Weitere Informationen finden Sie unter [Sichern und Wiederherstellen von TDE-Zertifikaten für lokale Datenbanken](TDE.BackupRestoreOnPrem.md).
+ RDS für SQL Server unterstützt keine Verwendung von kontoübergreifenden Schlüsseln für TDE.

## Sichern eines TDE-Zertifikats
<a name="TDE.BackupRestoreRDS.Backup"></a>

Verwenden Sie zum Sichern von TDE-Zertifikaten die gespeicherte Prozedur `rds_backup_tde_certificate`. Es hat die folgende Syntax.

```
EXECUTE msdb.dbo.rds_backup_tde_certificate
    @certificate_name='UserTDECertificate_certificate_name | RDSTDECertificatetimestamp',
    @certificate_file_s3_arn='arn:aws:s3:::bucket_name/certificate_file_name.cer',
    @private_key_file_s3_arn='arn:aws:s3:::bucket_name/key_file_name.pvk',
    @kms_password_key_arn='arn:aws:kms:region:account-id:key/key-id',
    [@overwrite_s3_files=0|1];
```

Die folgenden Parameter sind erforderlich:
+ `@certificate_name` – Der Name des zu sichernden TDE-Zertifikats.
+ `@certificate_file_s3_arn` – Der Ziel-Amazon-Ressourcenname (ARN) für die Sicherungsdatei des Zertifikats in Amazon S3.
+ `@private_key_file_s3_arn` – Der Ziel-S3-ARN der privaten Schlüsseldatei, die das TDE-Zertifikat sichert.
+ `@kms_password_key_arn` – Der ARN des symmetrischen KMS-Schlüssels, der zum Verschlüsseln des Passworts des privaten Schlüssels verwendet wurde.

Der folgende Parameter ist optional:
+ `@overwrite_s3_files` – Gibt an, ob das vorhandene Zertifikat und die privaten Schlüsseldateien in S3 überschrieben werden sollen:
  + `0` – Die vorhandenen Dateien werden nicht überschrieben. Dieser Wert ist der Standard.

    Wenn Sie `@overwrite_s3_files` auf 0 festlegen, wird ein Fehler ausgegeben, wenn eine Datei bereits vorhanden ist.
  + `1` – Eine vorhandene Datei mit dem angegebenen Namen wird überschrieben, auch wenn es sich nicht um eine Sicherungsdatei handelt.

**Example Sichern eines TDE-Zertifikats**  

```
EXECUTE msdb.dbo.rds_backup_tde_certificate
    @certificate_name='RDSTDECertificate20211115T185333',
    @certificate_file_s3_arn='arn:aws:s3:::TDE_certs/mycertfile.cer',
    @private_key_file_s3_arn='arn:aws:s3:::TDE_certs/mykeyfile.pvk',
    @kms_password_key_arn='arn:aws:kms:us-west-2:123456789012:key/AKIAIOSFODNN7EXAMPLE',
    @overwrite_s3_files=1;
```

## Wiederherstellen eines TDE-Zertifikats
<a name="TDE.BackupRestoreRDS.Restore"></a>

Verwenden Sie die gespeicherte Prozedur `rds_restore_tde_certificate` zum Wiederherstellen (Importieren) von Benutzer-TDE-Zertifikaten. Es hat die folgende Syntax.

```
EXECUTE msdb.dbo.rds_restore_tde_certificate
    @certificate_name='UserTDECertificate_certificate_name',
    @certificate_file_s3_arn='arn:aws:s3:::bucket_name/certificate_file_name.cer',
    @private_key_file_s3_arn='arn:aws:s3:::bucket_name/key_file_name.pvk',
    @kms_password_key_arn='arn:aws:kms:region:account-id:key/key-id';
```

Die folgenden Parameter sind erforderlich:
+ `@certificate_name` – Der Name des TDE-Zertifikats, das wiederhergestellt werden soll. Der Name muss mit dem Präfix `UserTDECertificate_` beginnen.
+ `@certificate_file_s3_arn` – Der S3-ARN der Sicherungsdatei, die zum Wiederherstellen des TDE-Zertifikats verwendet wurde.
+ `@private_key_file_s3_arn` – Der S3-ARN der Sicherungsdatei des privaten Schlüssels, die zum Wiederherstellen des TDE-Zertifikats verwendet wurde.
+ `@kms_password_key_arn` – Der ARN des symmetrischen KMS-Schlüssels, der zum Verschlüsseln des Passworts des privaten Schlüssels verwendet wurde.

**Example Wiederherstellen eines TDE-Zertifikats**  

```
EXECUTE msdb.dbo.rds_restore_tde_certificate
    @certificate_name='UserTDECertificate_myTDEcertificate',
    @certificate_file_s3_arn='arn:aws:s3:::TDE_certs/mycertfile.cer',
    @private_key_file_s3_arn='arn:aws:s3:::TDE_certs/mykeyfile.pvk',
    @kms_password_key_arn='arn:aws:kms:us-west-2:123456789012:key/AKIAIOSFODNN7EXAMPLE';
```

## Anzeigen wiederhergestellter TDE-Zertifikate
<a name="TDE.BackupRestoreRDS.Show"></a>

Verwenden Sie die Funktion `rds_fn_list_user_tde_certificates` zum Wiederherstellen (Importieren) von Benutzer-TDE-Zertifikaten Es hat die folgende Syntax.

```
SELECT * FROM msdb.dbo.rds_fn_list_user_tde_certificates();
```

Die Ausgabe sieht in etwa folgendermaßen aus. Hier werden nicht alle Spalten angezeigt.


|  |  |  |  |  |  |  |  |  |  |  | 
| --- |--- |--- |--- |--- |--- |--- |--- |--- |--- |--- |
| name | certificate\$1id | principal\$1id | pvt\$1key\$1encryption\$1type\$1desc | issuer\$1name | cert\$1serial\$1number | thumbprint | subject | start\$1date | expiry\$1date | pvt\$1key\$1last\$1backup\$1date | 
| UserTDECertificate\$1tde\$1cert | 343 | 1 | ENCRYPTED\$1BY\$1MASTER\$1KEY | AnyCompany Shipping | 79 3e 57 a3 69 fd 1d 9e 47 2c 32 67 1d 9c ca af | 0x6BB218B34110388680B FE1BA2D86C695096485B5 | AnyCompany Shipping | 2022-04-05 19:49:45.0000000 | 2023-04-05 19:49:45.0000000 | NULL | 

## Entfernen wiederhergestellter TDE-Zertifikate
<a name="TDE.BackupRestoreRDS.Drop"></a>

Verwenden Sie die gespeicherte Prozedur `rds_drop_tde_certificate`, um wiederhergestellte (importierte) Benutzer-TDE-Zertifikate zu löschen, die Sie nicht verwenden. Es hat die folgende Syntax.

```
EXECUTE msdb.dbo.rds_drop_tde_certificate @certificate_name='UserTDECertificate_certificate_name';
```

Der folgende Parameter ist erforderlich:
+ `@certificate_name` – Der Name des TDE-Zertifikats, das entfernt werden soll.

Sie können nur wiederhergestellte (importierte) TDE-Zertifikate löschen. Von RDS erstellte Zertifikate können nicht gelöscht werden.

**Example Entfernen eines TDE-Zertifikats**  

```
EXECUTE msdb.dbo.rds_drop_tde_certificate @certificate_name='UserTDECertificate_myTDEcertificate';
```

# Sichern und Wiederherstellen von TDE-Zertifikaten für lokale Datenbanken
<a name="TDE.BackupRestoreOnPrem"></a>

Sie können TDE-Zertifikate für lokale Datenbanken sichern und sie später in RDS für SQL Server wiederherstellen. Sie können auch ein TDE-Zertifikat von RDS für SQL Server auf einer lokalen DB-Instance wiederherstellen.

**Anmerkung**  
RDS für SQL Server unterstützt keine Verwendung von kontoübergreifenden Schlüsseln für TDE.

Mit dem folgenden Verfahren werden ein TDE-Zertifikat und ein privater Schlüssel gesichert. Der private Schlüssel wird mit einem Datenschlüssel verschlüsselt, der aus Ihrem KMS-Schlüssel mit symmetrischer Verschlüsselung generiert wird.

**So sichern Sie ein lokales TDE-Zertifikat**

1. Generieren Sie den Datenschlüssel mit dem AWS CLI [generate-data-key](https://docs.aws.amazon.com/cli/latest/reference/kms/generate-data-key.html)Befehl.

   ```
   aws kms generate-data-key \
       --key-id my_KMS_key_ID \
       --key-spec AES_256
   ```

   Die Ausgabe sieht in etwa folgendermaßen aus.

   ```
   {
   "CiphertextBlob": "AQIDAHimL2NEoAlOY6Bn7LJfnxi/OZe9kTQo/XQXduug1rmerwGiL7g5ux4av9GfZLxYTDATAAAAfjB8BgkqhkiG9w0B
   BwagbzBtAgEAMGgGCSqGSIb3DQEHATAeBglghkgBZQMEAS4wEQQMyCxLMi7GRZgKqD65AgEQgDtjvZLJo2cQ31Vetngzm2ybHDc3d2vI74SRUzZ
   2RezQy3sAS6ZHrCjfnfn0c65bFdhsXxjSMnudIY7AKw==",
   "Plaintext": "U/fpGtmzGCYBi8A2+0/9qcRQRK2zmG/aOn939ZnKi/0=",
   "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-00ee-99ff-88dd-aa11bb22cc33"
   }
   ```

   Sie verwenden die Nur-Text-Ausgabe im nächsten Schritt als Passwort für den privaten Schlüssel.

1. Sichern Sie Ihr TDE-Zertifikat wie im folgenden Beispiel gezeigt.

   ```
   BACKUP CERTIFICATE myOnPremTDEcertificate TO FILE = 'D:\tde-cert-backup.cer'
   WITH PRIVATE KEY (
   FILE = 'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\DATA\cert-backup-key.pvk',
   ENCRYPTION BY PASSWORD = 'U/fpGtmzGCYBi8A2+0/9qcRQRK2zmG/aOn939ZnKi/0=');
   ```

1. Speichern Sie die Sicherungsdatei des Zertifikats in Ihrem Amazon-S3-Zertifikat-Bucket.

1. Speichern Sie die Sicherungsdatei für den privaten Schlüssel in Ihrem S3-Zertifikat-Bucket mit dem folgenden Tag in den Metadaten der Datei:
   + Schlüssel: `x-amz-meta-rds-tde-pwd`
   + Wert: Der Wert `CiphertextBlob` aus der Generierung des Datenschlüssels (siehe folgendes Beispiel).

     ```
     AQIDAHimL2NEoAlOY6Bn7LJfnxi/OZe9kTQo/XQXduug1rmerwGiL7g5ux4av9GfZLxYTDATAAAAfjB8BgkqhkiG9w0B
     BwagbzBtAgEAMGgGCSqGSIb3DQEHATAeBglghkgBZQMEAS4wEQQMyCxLMi7GRZgKqD65AgEQgDtjvZLJo2cQ31Vetngzm2ybHDc3d2vI74SRUzZ
     2RezQy3sAS6ZHrCjfnfn0c65bFdhsXxjSMnudIY7AKw==
     ```

Mit dem folgenden Verfahren wird ein TDE-Zertifikat von RDS für SQL Server auf einer lokalen DB-Instance wiederhergestellt. Sie kopieren und stellen das TDE-Zertifikat auf Ihrer Ziel-DB-Instance mit der Zertifikatssicherung, der entsprechenden privaten Schlüsseldatei und dem Datenschlüssel wieder her. Das wiederhergestellte Zertifikat wird durch den Datenbank-Hauptschlüssel des neuen Servers verschlüsselt. 

**So stellen Sie ein TDE-Zertifikat wieder her**

1. Kopieren Sie die Sicherungsdatei des TDE-Zertifikats und die private Schlüsseldatei von Amazon S3 auf die Ziel-Instance. Weitere Informationen zum Kopieren von Dateien aus Amazon S3 finden Sie unter [Übertragen von Dateien zwischen RDS for SQL Server und Amazon S3](Appendix.SQLServer.Options.S3-integration.using.md).

1. Entschlüsseln Sie den verschlüsselten Ausgabetext mit Ihrem KMS-Schlüssel, um den Nur-Text des Datenschlüssels abzurufen. Der Verschlüsselungstext befindet sich in den S3-Metadaten der Sicherungsdatei für private Schlüssel.

   ```
   aws kms decrypt \
       --key-id my_KMS_key_ID \
       --ciphertext-blob fileb://exampleCiphertextFile | base64 -d \
       --output text \
       --query Plaintext
   ```

   Sie verwenden die Nur-Text-Ausgabe im nächsten Schritt als Passwort für den privaten Schlüssel.

1. Verwenden Sie den folgenden SQL-Befehl, um das TDE-Zertifikat wiederherzustellen.

   ```
   CREATE CERTIFICATE myOnPremTDEcertificate FROM FILE='D:\tde-cert-backup.cer'
   WITH PRIVATE KEY (FILE = N'D:\tde-cert-key.pvk',
   DECRYPTION BY PASSWORD = 'plain_text_output');
   ```

Weitere Informationen zur KMS-Entschlüsselung finden Sie unter [decrypt](https://docs.aws.amazon.com/cli/latest/reference/kms/decrypt.html) im KMS-Bereich der *AWS CLI -Befehlsreferenz*.

Nachdem das TDE-Zertifikat auf der Ziel-DB-Instance wiederhergestellt wurde, können Sie verschlüsselte Datenbanken mit diesem Zertifikat wiederherstellen.

**Anmerkung**  
Sie können dasselbe TDE-Zertifikat verwenden, um mehrere SQL-Server-Datenbanken auf der Quell-DB-Instance zu verschlüsseln. Wenn Sie mehrere Datenbanken zu einer eine Ziel-Instance migrieren möchten, kopieren Sie das mit den Datenbanken verknüpfte TDE-Zertifikat nur einmal auf die Ziel-Instance.

# Deaktivieren von TDE für RDS for SQL Server
<a name="TDE.Disabling"></a>

Wenn Sie TDE für eine DB-Instance von RDS for SQL deaktivieren möchten, stellen Sie zunächst sicher, dass keine verschlüsselten Objekte mehr auf der DB-Instance vorhanden sind. Entschlüsseln Sie dazu entweder die Objekte oder entfernen Sie sie. Wenn verschlüsselte Objekte auf der DB-Instance vorhanden sind, können Sie TDE für die DB-Instance nicht deaktivieren. Wenn ein Benutzer-TDE-Zertifikat für die Verschlüsselung wiederhergestellt (importiert) wurde, sollte es gelöscht werden. Wenn Sie die Konsole verwenden, um die TDE-Option aus einer Optionsgruppe zu entfernen, wird auf der Konsole angegeben, dass die Verarbeitung durchgeführt wird. Zudem wird ein Fehlerereignis erstellt, wenn die Optionsgruppe mit einer verschlüsselten DB-Instance oder einem DB-Snapshot verknüpft ist.

Das folgende Beispiel entfernt die TDE-Verschlüsselung aus einer Datenbank mit dem Namen `customerDatabase`. 

```
 1. ------------- Removing TDE ----------------
 2. 
 3. USE [customerDatabase]
 4. GO
 5. 
 6. -- Turn off encryption of the database
 7. ALTER DATABASE [customerDatabase]
 8. SET ENCRYPTION OFF
 9. GO
10. 
11. -- Wait until the encryption state of the database becomes 1. The state is 5 (Decryption in progress) for a while
12. SELECT db_name(database_id) as DatabaseName, * FROM sys.dm_database_encryption_keys
13. GO
14. 
15. -- Drop the DEK used for encryption
16. DROP DATABASE ENCRYPTION KEY
17. GO
18. 
19. -- Drop a user TDE certificate if it was restored (imported)
20. EXECUTE msdb.dbo.rds_drop_tde_certificate @certificate_name='UserTDECertificate_certificate_name';
21. 
22. -- Alter to SIMPLE Recovery mode so that your encrypted log gets truncated
23. USE [master]
24. GO
25. ALTER DATABASE [customerDatabase] SET RECOVERY SIMPLE
26. GO
```

Wenn alle Objekte entschlüsselt werden, haben Sie zwei Möglichkeiten:

1. Sie können die DB-Instance so ändern, dass sie einer Optionsgruppe ohne die Option TDE zugeordnet ist.

1. Sie können die TDE-Option aus der Optionsgruppe entfernen.

# SQL Server Audit
<a name="Appendix.SQLServer.Options.Audit"></a>

In Amazon RDS können Sie Microsoft SQL Server-Datenbanken mit dem integrierten Prüfmechanismus von SQL Server überwachen. Sie können Überwachungen und Überwachungsspezifikationen genau so erstellen, wie Sie dies für lokale Datenbankserver tun. 

RDS lädt die abgeschlossenen Audit-Protokolle Ihren S3-Bucket mit der von Ihnen bereitgestellten IAM-Rolle hoch. Wenn Sie die Aufbewahrung aktivieren, behält RDS Ihre Audit-Protokolle für den festgelegten Zeitraum auf Ihrer DB-Instance bei.

Weitere Informationen finden Sie unter [SQL Server Audit (Datenbank-Engine)](https://docs.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-database-engine) in der Microsoft SQL Server-Dokumentation.

## SQL-Server-Audit mit Datenbankaktivitätsstreams
<a name="Appendix.SQLServer.DAS.Audit"></a>

Sie können Datenbankaktivitätsstreams für RDS verwenden, um SQL-Server-Audit-Ereignisse in die Tools zur Überwachung der Datenbankaktivitäten von Imperva, McAfee und IBM zu integrieren. Weitere Informationen über die Überwachung mit Datenbankaktivitätsstreams für RDS SQL Server finden Sie unter [Prüfungen in Microsoft SQL Server](DBActivityStreams.md#DBActivityStreams.Overview.SQLServer-auditing) 

**Topics**
+ [

## SQL-Server-Audit mit Datenbankaktivitätsstreams
](#Appendix.SQLServer.DAS.Audit)
+ [

## Support für SQL Server Audit
](#Appendix.SQLServer.Options.Audit.Support)
+ [

# Hinzufügen von SQL Server Audit zu DB-Instance-Optionen
](Appendix.SQLServer.Options.Audit.Adding.md)
+ [

# Verwenden von SQL Server Audit
](Appendix.SQLServer.Options.Audit.CreateAuditsAndSpecifications.md)
+ [

# Anzeigen von Audit-Protokollen
](Appendix.SQLServer.Options.Audit.AuditRecords.md)
+ [

## Verwenden von SQL Server Audit mit Multi-AZ-Instances
](#Appendix.SQLServer.Options.Audit.Multi-AZ)
+ [

# Konfigurieren eines S3-Buckets
](Appendix.SQLServer.Options.Audit.S3bucket.md)
+ [

# Manuelles Erstellen einer IAM-Rolle für SQL Server Audit
](Appendix.SQLServer.Options.Audit.IAM.md)

## Support für SQL Server Audit
<a name="Appendix.SQLServer.Options.Audit.Support"></a>

In Amazon RDS unterstützen ab SQL Server 2016 alle Editionen von SQL Server Überwachungen auf Serverebene. Die Enterprise-Edition unterstützt zudem Überwachungen auf Datenbankebene. Ab SQL Server 2016 (13.x) SP1 unterstützen alle Editionen sowohl Audits auf Server- als auch auf Datenbankebene. Weitere Informationen finden Sie unter [SQL Server-Audit (Datenbank-Engine)](https://docs.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-database-engine) in der SQL Server-Dokumentation.

RDS unterstützt die Konfiguration der folgenden Optionseinstellungen für SQL Server Audit. 


| Optionseinstellung | Zulässige Werte | Beschreibung | 
| --- | --- | --- | 
| IAM\$1ROLE\$1ARN | Ein gültiger Amazon Resource Name (ARN) im Format arn:aws:iam::account-id:role/role-name. | Der ARN der IAM-Rolle, der Zugriff auf den S3-Bucket gewährt, in dem Sie Ihre Audit-Protokolle speichern möchten. Weitere Informationen finden Sie unter [Amazon-Ressourcennamen (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam) im Allgemeine AWS-Referenz. | 
| S3\$1BUCKET\$1ARN | Ein gültiger ARN im Format arn:aws:s3:::amzn-s3-demo-bucket oder arn:aws:s3:::amzn-s3-demo-bucket/key-prefix | Der ARN für den S3-Bucket, in dem Sie Ihre Audit-Protokolle speichern möchten. | 
| ENABLE\$1COMPRESSION | true oder false | Steuert die Komprimierung des Überwachungsprotokolls. Standardmäßig ist die Komprimierung aktiviert (auf gesetz true). | 
| RETENTION\$1TIME | 0 auf 840 | Die Aufbewahrungszeit (in Stunden), die SQL Server-Audit-Protokolle auf der RDS-Instance gespeichert werden. Die Aufbewahrung ist standardmäßig aktiviert. | 

# Hinzufügen von SQL Server Audit zu DB-Instance-Optionen
<a name="Appendix.SQLServer.Options.Audit.Adding"></a>

Die Aktivierung von SQL Server Audit erfordert zwei Schritte: das Aktivieren der Option auf der DB-Instance und das Aktivieren der Funktion in SQL Server. Der Prozess für das Hinzufügen der SQL Server Audit-Option zu einer DB-Instance ist wie folgt: 

1. Erstellen Sie eine neue Optionsgruppe oder kopieren oder ändern Sie eine bestehende Optionsgruppe. 

1. Fügen Sie alle erforderlichen Optionen hinzu und konfigurieren Sie diese.

1. Ordnen Sie die Optionsgruppe der DB-Instance zu.

Nachdem Sie die SQL Server Audit-Option hinzugefügt haben, ist kein Neustart der DB-Instance erforderlich. Sobald die Optionsgruppe aktiv ist, können Sie Überwachungen erstellen und Audit-Protokolle in Ihrem S3-Bucket speichern. 

**So fügen Sie SQL Server Audit-Optionen zur Optionsgruppe einer DB-Instance hinzu und konfigurieren sie**

1. Wählen Sie eine der folgenden Optionen aus:
   + Verwenden einer vorhandenen Optionsgruppe.
   + Erstellen einer benutzerdefinierten DB-Optionsgruppe und verwenden der Optionsgruppe. Weitere Informationen finden Sie unter [Erstellen einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Fügen Sie die Option **SQLSERVER\$1AUDIT** zur Optionsgruppe hinzu, und konfigurieren Sie die Optionseinstellungen. Weitere Informationen über das Hinzufügen von Optionen finden Sie unter [Hinzufügen einer Option zu einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 
   + Wenn Sie bereits eine IAM-Rolle mit den erforderlichen Richtlinien haben, können Sie für **IAM role (IAM-Rolle)** diese Rolle auswählen. Zum Erstellen einer neuen IAM-Rolle wählen Sie **Create a New Role (Neue Rolle erstellen)** aus. Informationen zu den erforderlichen Richtlinien finden Sie unter [Manuelles Erstellen einer IAM-Rolle für SQL Server Audit](Appendix.SQLServer.Options.Audit.IAM.md).
   + Wenn Sie bereits einen S3-Bucket haben, den Sie verwenden möchten, wählen Sie diesen für **Select S3 destination (S3-Ziel auswählen)** aus.. Um einen S3-Bucket zu erstellen, wählen Sie **Einen neuen S3-Bucket erstellen** aus. 
   + Lassen die Option **Enable Compression (Komprimierung aktivieren)** aktiviert, um Überwachungsdateien zu komprimieren. Die Komprimierung ist standardmäßig aktiviert. Deaktivieren Sie das Kontrollkästchen **Enable Compression (Komprimierung aktivieren)**, wenn keine Komprimierung erfolgen soll. 
   + Wählen Sie für die Aufbewahrung von Überwachungsdatensätzen auf der DB-Instance die Option **Audit log retention (Aufbewahrung von Audit-Protokollen)** aus. Geben Sie einen Aufbewahrungszeitraum in Stunden an. Die maximale Aufbewahrungsdauer beträgt 35 Tage.

1. Wenden Sie die Optionsgruppe auf eine neue oder vorhandene DB-Instance an. Wählen Sie eine der folgenden Optionen aus:
   + Wenn Sie eine neue DB-Instance erstellen, weisen Sie die Optionsgruppe beim Start der Instance zu. 
   + Weisen Sie bei einer bestehenden DB-Instance die Optionsgruppe zu, indem Sie die Instance ändern und die neue Optionsgruppe anhängen. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md). 

## Ändern der SQL Server Audit-Option
<a name="Appendix.SQLServer.Options.Audit.Modifying"></a>

Nach dem Aktivieren der SQL Server Audit-Option können Sie die Einstellungen ändern. Weitere Informationen über das Ändern von Optionseinstellungen finden Sie unter [Ändern einer Optionseinstellung](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption).

## Entfernen von SQL Server Audit aus DB-Instance-Optionen
<a name="Appendix.SQLServer.Options.Audit.Removing"></a>

Sie können die SQL Server Audit-Funktion ausschalten, indem Sie Überwachungen deaktivieren und dann die Option löschen. 

**So wird die Überwachung entfernt**

1. Deaktivieren Sie alle Überwachungseinstellungen in SQL Server. Fragen Sie die SQL Server-Sicherheitskatalogansichten ab, um herauszufinden, wo Überwachungen durchgeführt werden. Weitere Informationen finden Sie unter [Sicherheitskatalogansichten](https://docs.microsoft.com/sql/relational-databases/system-catalog-views/security-catalog-views-transact-sql) in der Microsoft SQL Server-Dokumentation. 

1. Löschen Sie die SQL Server Audit-Option von der DB-Instance. Wählen Sie eine der folgenden Optionen aus: 
   + Löschen Sie die SQL Server Audit-Option aus der Optionsgruppe, die von der DB-Instance verwendet wird. Diese Änderung wirkt sich auf alle DB-Instances aus, die dieselbe Optionsgruppe verwenden. Weitere Informationen finden Sie unter [Entfernen einer Option aus einer Optionsgruppe](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption).
   + Ändern Sie die DB-Instance und wählen Sie dann eine Optionsgruppe ohne SQL Server Audit-Option aus. Diese Änderung wirkt sich nur auf die DB-Instance aus, die Sie modifizieren. Sie können die (leere) Standardoptionsgruppe oder eine andere benutzerdefinierte Optionsgruppe angeben. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

1. Nach dem Löschen der SQL Server Audit-Option aus der DB-Instance müssen Sie die Instance nicht neu starten. Entfernen Sie nicht benötigte Überwachungsdateien aus Ihrem S3-Bucket.

# Verwenden von SQL Server Audit
<a name="Appendix.SQLServer.Options.Audit.CreateAuditsAndSpecifications"></a>

Sie können Serverüberwachungen, Serverüberwachungs-Spezifikationen und Datenbanküberwachungs-Spezifikationen auf dieselbe Art steuern, wie Sie dies auch für Ihre lokalen Datenbankserver tun.

## Erstellen von Überwachungen
<a name="Appendix.SQLServer.Options.Audit.CreateAudits"></a>

Sie erstellen Serverüberwachungen auf die gleiche Art wie Sie auch Überwachungen für lokale Datenbankserver erstellen. Weitere Informationen zum Erstellen von Serverüberwachungen finden Sie unter [CREATE SERVER AUDIT](https://docs.microsoft.com/sql/t-sql/statements/create-server-audit-transact-sql) in der Microsoft SQL Server-Dokumentation.

Halten Sie sich an die folgenden Beschränkungen, um Fehler zu vermeiden:
+ Überschreiten Sie nicht die maximale Anzahl unterstützter Serverüberwachungen von 50 pro Instance. 
+ Weisen Sie SQL Server an, Daten in eine Binärdatei zu schreiben.
+ Verwenden Sie `RDS_` nicht als Präfix im Serverüberwachungsnamen.
+ Legen Sie für `FILEPATH` die Option `D:\rdsdbdata\SQLAudit` fest.
+ Geben Sie für `MAXSIZE` eine Größe zwischen 2 MB und 50 MB an.
+ Konfigurieren Sie nicht `MAX_ROLLOVER_FILES` oder `MAX_FILES`.
+ Konfigurieren Sie SQL Server nicht so, dass die DB-Instance heruntergefahren wird, wenn das Schreiben in den Überwachungsdatensatz fehlschlägt.

## Erstellen von Überwachungsspezifikationen
<a name="Appendix.SQLServer.Options.Audit.CreateSpecifications"></a>

Sie erstellen Spezifikationen für Server- und Datenbanküberwachungen auf dieselbe Art und Weise, wie Sie dies auch für lokale Datenbankserver tun. Informationen zum Erstellen von Überwachungsspezifikationen finden Sie unter [CREATE SERVER AUDIT SPECIFICATION](https://docs.microsoft.com/sql/t-sql/statements/create-server-audit-specification-transact-sql) und [CREATE DATABASE AUDIT SPECIFICATION](https://docs.microsoft.com/sql/t-sql/statements/create-database-audit-specification-transact-sql) in der Microsoft SQL Server-Dokumentation.

Verwenden Sie `RDS_` nicht als Präfix im Namen der Spezifikation für die Server- oder Datenbanküberwachung, um Fehler zu vermeiden. 

# Anzeigen von Audit-Protokollen
<a name="Appendix.SQLServer.Options.Audit.AuditRecords"></a>

Ihre Audit-Protokolle werden in gespeicher `D:\rdsdbdata\SQLAudit`.

Nachdem SQL das Schreiben in die Audit-Protokolldatei abgeschlossen hat – nachdem die maximale Dateigröße erreicht wurde – lädt Amazon RDS die Datei in den S3-Bucket. Wenn die Aufbewahrung aktiviert ist, verschiebt Amazon RDS die Datei in den Aufbewahrungsordner: `D:\rdsdbdata\SQLAudit\transmitted`. 

Informationen zu dem Konfigurieren der Aufbewahrung finden Sie unter [Hinzufügen von SQL Server Audit zu DB-Instance-Optionen](Appendix.SQLServer.Options.Audit.Adding.md).

Überwachungsdatensätze werden auf der DB-Instance aufbewahrt, bis die Audit-Protokolldatei hochgeladen wurde. Sie können die Überwachungsdatensätze anzeigen, wenn Sie den folgenden Befehl ausführen.

```
SELECT   * 
	FROM     msdb.dbo.rds_fn_get_audit_file
	             ('D:\rdsdbdata\SQLAudit\*.sqlaudit'
	             , default
	             , default )
```

Sie können denselben Befehl zum Anzeigen der Überwachungsdatensätze in Ihrem Aufbewahrungsordner verwenden, indem Sie den Filter in änder `D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit`.

```
SELECT   * 
	FROM     msdb.dbo.rds_fn_get_audit_file
	             ('D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit'
	             , default
	             , default )
```

## Verwenden von SQL Server Audit mit Multi-AZ-Instances
<a name="Appendix.SQLServer.Options.Audit.Multi-AZ"></a>

Bei Multi-AZ-Instances ähnelt der Prozess zum Senden von Audit-Protokolldateien an Amazon S3 dem Prozess bei Single-AZ-Instances. Es gibt jedoch einige wichtige Unterschiede: 
+ Objekte der Spezifikation der Datenbanküberwachung werden auf allen Knoten repliziert.
+ Serverüberwachungen und Spezifikationen für Serverüberwachungen werden nicht auf sekundäre Knoten repliziert. Stattdessen müssen Sie diese manuell erstellen oder ändern.

So werden Serverüberwachungen oder eine Spezifikation für die Serverüberwachung von beiden Knoten erfasst:

1. Erstellen Sie eine Serverüberwachung oder eine Spezifikation für die Serverüberwachung auf dem primären Knoten.

1. Führen Sie ein Failover auf den sekundären Knoten durch und erstellen Sie eine Serverüberwachung oder eine Spezifikation für die Serverüberwachung mit demselben Namen und derselben GUID auf dem sekundären Knoten. Geben Sie die GUID mit dem Parameter `AUDIT_GUID` an.

# Konfigurieren eines S3-Buckets
<a name="Appendix.SQLServer.Options.Audit.S3bucket"></a>

Die Audit-Protokolldateien werden automatisch von der DB-Instance in Ihren S3-Bucket hochgeladen. Für den S3-Bucket, den Sie als Ziel für die Überwachungsdateien verwenden, gelten folgende Einschränkungen: 
+ Sie muss sich in derselben AWS Region und demselben AWS Konto wie die DB-Instance befinden.
+ Er darf nicht öffentlich zugänglich sein.
+ Der Bucket-Eigentümer muss auch der Eigentümer der IAM-Rolle sein.
+ Ihre IAM-Rolle muss über Berechtigungen für den vom Kunden verwalteten KMS-Schlüssel verfügen, der mit der serverseitigen S3-Bucket-Verschlüsselung verknüpft ist.

Der Zielschlüssel, der zum Speichern der Daten verwendet wird, unterliegt folgendem Benennungsschema: `amzn-s3-demo-bucket/key-prefix/instance-name/audit-name/node_file-name.ext` 

**Anmerkung**  
Sie legen sowohl den Bucket-Namen als auch die Schlüsselpräfixwerte mit der Optionseinstellung `S3_BUCKET_ARN` fest.

Das Schema besteht aus den folgenden Elementen:
+ ***amzn-s3-demo-bucket*** – Der Name des S3-Buckets.
+ **`key-prefix`** – Das benutzerdefinierte Schlüsselpräfix, das Sie für die Audit-Protokolle verwenden möchten.
+ **`instance-name`** – Der Name Ihrer Amazon-RDS-Instance.
+ **`audit-name`** – Der Namen der Überwachung.
+ **`node`** – Die Kennung des Knotens, der die Quelle der Audit-Protokolle ist (`node1` oder `node2`). Es gibt einen Knoten für die Single-AZ-Instance und zwei Replikationsknoten für eine Multi-AZ-Instance. Dies sind keine primären und sekundären Knoten, da sich die Rolle für primär und sekundär mit der Zeit ändert. Stattdessen ist die Knoten-ID eine einfache Beschriftung. 
  + **`node1`** – Der erste Replikationsknoten (bei Single-AZ gibt es nur einen Knoten).
  + **`node2`** – Der zweite Replikationsknoten (bei Multi-AZ gibt es zwei Knoten).
+ **`file-name`** – Der Name der Zieldatei. Der Dateiname wird von SQL Server unverändert übernommen.
+ **`ext`** – Die Erweiterung der Datei (`zip` oder `sqlaudit`):
  + **`zip`** – Bei aktivierter Komprimierung (Standard).
  + **`sqlaudit`** – Bei nicht aktivierter Komprimierung.

# Manuelles Erstellen einer IAM-Rolle für SQL Server Audit
<a name="Appendix.SQLServer.Options.Audit.IAM"></a>

Wenn Sie eine neue Option erstellen, werden in der Regel die IAM-Rolle und die IAM-Vertrauensrichtlinie für Sie AWS-Managementkonsole erstellt. Sie können jedoch manuell eine neue IAM-Rolle für die Verwendung mit SQL Server Audits erstellen, sodass Sie diese an mögliche weitere Anforderungen anpassen können. Dazu erstellen Sie eine IAM-Rolle und delegieren Berechtigungen, sodass der Amazon RDS-Service Ihren Amazon S3-Bucket verwenden kann. Beim Anlegen dieser IAM-Rolle geben Sie Vertrauens- und Berechtigungsrichtlinien an. Die Vertrauensrichtlinie erlaubt es Amazon RDS, diese Rolle zu übernehmen. Die Berechtigungsrichtlinie definiert die Aktionen, die über diese Rolle ausgeführt werden können. Weitere Informationen finden Sie unter [Erstellen einer Rolle zum Delegieren von Berechtigungen für einen AWS Dienst](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) im *AWSIdentity and Access Management-Benutzerhandbuch*. 

Sie können anhand der Beispiele in diesem Abschnitt die benötigten Vertrauensbeziehungen und Berechtigungsrichtlinien erstellen.

Das folgende Beispiel zeigt eine Vertrauensbeziehung für SQL Server Audit. Das *Service-Prinzipal* `rds.amazonaws.com` kommt zum Einsatz, um RDS das Schreiben in den S3-Bucket zu erlauben. Ein*Service-Prinzipal* ist eine Kennung, die verwendet wird, um einem Service Berechtigungen zu erteilen. Wann immer Sie auf diese Art Zugriff auf `rds.amazonaws.com` gewähren, erlauben Sie RDS, eine Aktion in Ihrem Namen auszuführen. Weitere Informationen zu Service-Prinzipalen finden Sie unter [AWSJSON-Richtlinienelemente: Prinzipal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html).

**Example Vertrauensbeziehung für SQL Server Audit**    
****  

```
{
	    "Version":"2012-10-17",		 	 	 
	    "Statement": [
	        {
	            "Effect": "Allow",
	            "Principal": {
	                "Service": "rds.amazonaws.com"
	            },
	            "Action": "sts:AssumeRole"
	        }
	    ]
	}
```

Wir empfehlen die Verwendung der globalen Bedingungskontextschlüssel [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) und [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) in ressourcenbasierten Vertrauensbeziehungen, um die Berechtigungen des Services auf eine bestimmte Ressource zu beschränken. Dies ist der effektivste Weg, um sich vor dem [verwirrtes Stellvertreterproblem](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) zu schützen.

Sie können beide globalen Bedingungskontextschlüssel verwenden und der Wert `aws:SourceArn` enthält die Konto-ID. Stellen Sie in diesen Fällen sicher, dass der Wert `aws:SourceAccount` und das Konto im Wert `aws:SourceArn` dieselbe Konto-ID verwenden, wenn sie in derselben Anweisung verwendet werden.
+ Verwenden von `aws:SourceArn` wenn Sie einen serviceübergreifenden Zugriff für eine einzelne Ressource wünschen.
+ Verwenden von `aws:SourceAccount` wenn Sie zulassen möchten, dass eine Ressource in diesem Konto mit der betriebsübergreifenden Verwendung verknüpft wird.

Stellen Sie in der Vertrauensbeziehung sicher, dass Sie den globalen Bedingungskontextschlüssel `aws:SourceArn` mit dem vollständigen Amazon-Ressourcennamen (ARN) der Ressourcen verwenden, die auf die Rolle zugreifen. Stellen Sie bei SQL Server Audit sicher, dass Sie sowohl die DB-Optionsgruppe als auch die DB-Instances einschließen, wie im folgenden Beispiel gezeigt.

**Example Vertrauensbeziehung mit dem globalen Bedingungskontextschlüssel für SQL Server Audit**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "rds.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceArn": [
                        "arn:aws:rds:Region:my_account_ID:db:db_instance_identifier",
                        "arn:aws:rds:Region:my_account_ID:og:option_group_name"
                    ]
                }
            }
        }
    ]
}
```

Im folgenden Beispiel einer Berechtigungsrichtlinie für SQL Server Audit, wird ein ARN für den Amazon S3 Bucket angegeben. Sie können ARNs damit ein bestimmtes Konto, einen bestimmten Benutzer oder eine bestimmte Rolle identifizieren, für die Sie Zugriff gewähren möchten. Weitere Informationen zur Verwendung ARNs finden Sie unter [Amazon-Ressourcennamen (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).

**Example Berechtigungsrichtlinie für SQL Server Audit**    
****  

```
{
	    "Version":"2012-10-17",		 	 	 
	    "Statement": [
	        {
	            "Effect": "Allow",
	            "Action": "s3:ListAllMyBuckets",
	            "Resource": "*"
	        },
	        {
	            "Effect": "Allow",
	            "Action": [
	                "s3:ListBucket",
	                "s3:GetBucketACL",
	                "s3:GetBucketLocation"
	            ],
	            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket"
	        },
	        {
	            "Effect": "Allow",
	            "Action": [
	                "s3:PutObject",
	                "s3:ListMultipartUploadParts",
	                "s3:AbortMultipartUpload"
	            ],
	            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/key_prefix/*"
	        }
	    ]
	}
```

**Anmerkung**  
Die `s3:ListAllMyBuckets` Aktion ist erforderlich, um zu überprüfen, ob dasselbe AWS Konto sowohl den S3-Bucket als auch die SQL Server-DB-Instance besitzt. Die Aktion listet die Namen der Buckets in dem Konto auf.  
S3-Bucket-Namespaces sind global. Wenn Sie Ihren Bucket versehentlich löschen, kann ein anderer Benutzer einen Bucket mit demselben Namen in einem anderen Konto erstellen. Dann werden die SQL Server-Prüfungsdaten in den neuen Bucket geschrieben.

# Unterstützung für SQL Server Analysis Services in Amazon RDS für SQL Server
<a name="Appendix.SQLServer.Options.SSAS"></a>

Microsoft SQL Server Analysis Services (SSAS) ist Teil der Microsoft Business Intelligence (MSBI)-Suite. SSAS ist ein Online Analytical Processing (OLAP)- und Data Mining-Tool, das in SQL Server installiert ist. Sie verwenden SSAS, um Daten zu analysieren, anhand derer Sie Geschäftsentscheidungen treffen. SSAS unterscheidet sich von der relationalen SQL Server-Datenbank, da SSAS für Abfragen und Berechnungen optimiert ist, die in einer Business Intelligence-Umgebung üblich sind.

 Sie können SSAS für vorhandene oder neue DB-Instances aktivieren. Es wird auf derselben DB-Instance wie Ihre Datenbank-Engine installiert. Weitere Informationen zu SSAS finden Sie in der Microsoft [Analysis Services-Dokumentation](https://docs.microsoft.com/en-us/analysis-services).

Amazon RDS unterstützt SSAS für SQL Server Standard und Enterprise Editions in den folgenden Versionen:
+ Tabellarischer Modus:
  + 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
+ Mehrdimensionaler Modus:
  + SQL Server 2019, Version 15.00.4153.1.v1 und höher
  + SQL Server 2017, Version 14.00.3381.3.v1 und höher
  + SQL Server 2016, Version 13.00.5882.1.v1 und höher

**Contents**
+ [

## Einschränkungen
](#SSAS.Limitations)
+ [

# Aktivieren von SSAS
](SSAS.Enabling.md)
  + [

## Erstellen einer Optionsgruppe für SSAS
](SSAS.Enabling.md#SSAS.OptionGroup)
  + [

## Hinzufügen der SSAS-Option zur Optionsgruppe
](SSAS.Enabling.md#SSAS.Add)
  + [

## Zuordnen der Optionsgruppe zu Ihrer DB-Instance
](SSAS.Enabling.md#SSAS.Apply)
  + [

## Zulassen des eingehenden Zugriffs auf Ihre VPC-Sicherheitsgruppe
](SSAS.Enabling.md#SSAS.InboundRule)
  + [

## Aktivieren der Amazon-S3-Integration
](SSAS.Enabling.md#SSAS.EnableS3)
+ [

# Bereitstellen von SSAS-Projekten auf Amazon RDS
](SSAS.Deploy.md)
+ [

# Überwachen des Status einer Bereitstellungsaufgabe
](SSAS.Monitor.md)
+ [

# Verwenden von SSAS auf Amazon RDS
](SSAS.Use.md)
  + [

## Einrichten eines Windows-authentifizierten Benutzers für SSAS
](SSAS.Use.md#SSAS.Use.Auth)
  + [

## Hinzufügen eines Domänenbenutzers als Datenbankadministrator
](SSAS.Use.md#SSAS.Admin)
  + [

## Erstellen eines SSAS-Proxys
](SSAS.Use.md#SSAS.Use.Proxy)
  + [

## Planen der SSAS-Datenbankverarbeitung mit SQL Server Agent
](SSAS.Use.md#SSAS.Use.Schedule)
  + [

## Widerrufen des SSAS-Zugriffs vom Proxy
](SSAS.Use.md#SSAS.Use.Revoke)
+ [

# Sichern einer SSAS-Datenbank
](SSAS.Backup.md)
+ [

# Wiederherstellen einer SSAS-Datenbank
](SSAS.Restore.md)
  + [

## Wiederherstellen einer DB-Instance zu einer bestimmten Zeit
](SSAS.Restore.md#SSAS.PITR)
+ [

# Ändern des SSAS-Modus
](SSAS.ChangeMode.md)
+ [

# Deaktivieren von SSAS
](SSAS.Disable.md)
+ [

# Fehlerbehebung von SSAS-Problemen
](SSAS.Trouble.md)

## Einschränkungen
<a name="SSAS.Limitations"></a>

Die folgenden Einschränkungen gelten für die Verwendung von SSAS auf RDS-for-SQL-Server:
+ RDS für SQL Server unterstützt die Ausführung von SSAS im tabellarischen oder mehrdimensionalen Modus. Weitere Informationen finden Sie unter [Comparing tabular and multidimensional solutions](https://docs.microsoft.com/en-us/analysis-services/comparing-tabular-and-multidimensional-solutions-ssas) in der Microsoft-Dokumentation.
+ Sie können jeweils nur einen SSAS-Modus verwenden. Bevor Sie den Modus ändern, sollten Sie alle SSAS-Datenbanken löschen.

  Weitere Informationen finden Sie unter [Ändern des SSAS-Modus](SSAS.ChangeMode.md).
+ Multi-AZ-Instances werden nicht unterstützt.
+ Instances müssen selbstverwaltetes Active Directory oder AWS Directory Service for Microsoft Active Directory für die SSAS-Authentifizierung verwenden. Weitere Informationen finden Sie unter [Arbeiten mit Active Directory mit RDS für SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md).
+ Benutzer erhalten keinen SSAS-Serveradministratorzugriff, können jedoch Administratorzugriff auf Datenbankebene erhalten.
+ Der einzige unterstützte Port für den Zugriff auf SSAS ist 2383.
+ Projekte können nicht direkt bereitgestellt werden. Dazu stellen wir eine gespeicherte RDS-Prozedur bereit. Weitere Informationen finden Sie unter [Bereitstellen von SSAS-Projekten auf Amazon RDS](SSAS.Deploy.md).
+ Die Verarbeitung während der Bereitstellung wird nicht unterstützt.
+ Die Verwendung von XMLA-Dateien für die Bereitstellung wird nicht unterstützt.
+ SSAS-Projekteingabedateien und Datenbanksicherungs-Ausgabedateien können sich nur im `D:\S3`-Ordner der DB-Instance befinden.

# Aktivieren von SSAS
<a name="SSAS.Enabling"></a>

Verwenden Sie den folgenden Prozess, um SSAS für Ihre DB-Instance zu aktivieren:

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

1. Fügen Sie die Option `SSAS` zur Optionsgruppe hinzu.

1. Ordnen Sie die Optionsgruppe der DB-Instance zu.

1. Erlauben Sie eingehenden Zugriff auf die (VPC)-Sicherheitsgruppe (Virtual Private Cloud) für den SSRS-Listener-Port.

1. Aktivieren der Amazon-S3-Integration

## Erstellen einer Optionsgruppe für SSAS
<a name="SSAS.OptionGroup"></a>

Verwenden Sie die AWS-Managementkonsole oder AWS CLI, um eine Optionsgruppe zu erstellen, die der SQL Server-Engine und der Version der DB-Instance entspricht, die Sie verwenden möchten.

**Anmerkung**  
Sie können auch eine vorhandene Optionsgruppe verwenden, wenn es sich um die korrekte SQL Server-Engine und -Version handelt.

### Konsole
<a name="SSAS.OptionGroup.Console"></a>

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

**So erstellen Sie die Optionsgruppe**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. Führen Sie im Bereich **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. **ssas-se-2017**. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

   1. Geben Sie unter **Beschreibung** eine kurze Beschreibung der Optionsgruppe ein, z. B. **SSAS option group for SQL Server SE 2017**. Die Beschreibung ist nur zur Information.

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

   1. Wählen Sie im Feld **Major Engine Version (Engine-Hauptversion)** **14.00** aus.

1. Wählen Sie **Erstellen** aus.

### CLI
<a name="SSAS.OptionGroup.CLI"></a>

Im folgenden CLI-Beispiel wird eine Optionsgruppe für SQL Server Standard Edition 2017 erstellt.

**So erstellen Sie die Optionsgruppe**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-option-group \
      --option-group-name ssas-se-2017 \
      --engine-name sqlserver-se \
      --major-engine-version 14.00 \
      --option-group-description "SSAS option group for SQL Server SE 2017"
  ```

  Für Windows:

  ```
  aws rds create-option-group ^
      --option-group-name ssas-se-2017 ^
      --engine-name sqlserver-se ^
      --major-engine-version 14.00 ^
      --option-group-description "SSAS option group for SQL Server SE 2017"
  ```

## Hinzufügen der SSAS-Option zur Optionsgruppe
<a name="SSAS.Add"></a>

Verwenden Sie als Nächstes die AWS-Managementkonsole oder AWS CLI, um die Option `SSAS` zur Optionsgruppe hinzuzufügen.

### Konsole
<a name="SSAS.Add.Console"></a>

**So fügen Sie die Option SSAS hinzu**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe aus, die Sie gerade erstellt haben.

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

1. Wählen Sie unter **Option details (Optionsdetails)** für **Option name (Optionsname)** die Option **SSAS** aus.

1. Führen Sie unter **Optionseinstellungen** die folgenden Schritte aus:

   1. Geben Sie für **Max memory** (Maximaler Speicher) einen Wert im Bereich von 10 bis 80 ein.

      **Max memory (Max. Speicher)** gibt den oberen Schwellenwert an, über dem SSAS beginnt, Speicher aggressiver freizugeben, um Platz für gerade ausgeführte Anforderungen und auch neue Anforderungen mit hoher Priorität zu schaffen. Die Zahl ist ein Prozentsatz des Gesamtspeichers der DB-Instance. Der erlaubte Wertebereich liegt zwischen 10–80; der Standardwert ist 45.

   1. Wählen Sie für **Mode** (Modus) den SSAS-Servermodus **Tabular** (Tabellarisch) oder **Multidimensional** (Multidimensional) aus.

      Wenn Ihnen die Einstellung **Mode** (Modus) nicht angezeigt wird, bedeutet das, dass der multidimensionale Modus in Ihrer AWS-Region nicht unterstützt wird. Weitere Informationen finden Sie unter [Einschränkungen](Appendix.SQLServer.Options.SSAS.md#SSAS.Limitations).

      **Tabular** (Tabellarisch) ist die Standardeinstellung.

   1. Wählen Sie für **Security groups (Sicherheitsgruppen)** die VPC-Sicherheitsgruppe aus, die der Option zugeordnet werden soll.
**Anmerkung**  
Der Port für den Zugriff auf SSAS, 2383, ist vorbelegt.

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

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

### CLI
<a name="SSAS.Add.CLI"></a>

**So fügen Sie die Option SSAS hinzu**

1. Erstellen Sie beispielsweise `ssas-option.json`, eine JSON-Datei mit den folgenden Parametern:
   + `OptionGroupName` – Der Name der Optionsgruppe, die Sie zuvor erstellt oder ausgewählt haben (`ssas-se-2017` im folgenden Beispiel).
   + `Port` – Der Port, den Sie für den Zugriff auf SSAS verwenden. Der einzige unterstützte Port ist 2383.
   + `VpcSecurityGroupMemberships` – Mitgliedschaften für VPC-Sicherheitsgruppen für Ihre RDS-DB-Instance.
   + `MAX_MEMORY` – Der obere Schwellenwert, über dem SSAS beginnen sollte, Speicher aggressiver freizugeben, um Platz für gerade ausgeführte oder neue Anforderungen mit hoher Priorität zu schaffen. Die Zahl ist ein Prozentsatz des Gesamtspeichers der DB-Instance. Der erlaubte Wertebereich liegt zwischen 10–80; der Standardwert ist 45.
   + `MODE` – Der SSAS-Servermodus ist entweder `Tabular` oder `Multidimensional`. `Tabular` ist die Standardeinstellung.

     Wenn Sie einen Fehler erhalten, dass die `MODE`-Einstellung nicht gültig ist, bedeutet das, dass der multidimensionale Modus in Ihrer AWS-Region nicht unterstützt wird. Weitere Informationen finden Sie unter [Einschränkungen](Appendix.SQLServer.Options.SSAS.md#SSAS.Limitations).

   Nachfolgend finden Sie ein Beispiel für eine JSON-Datei mit SSAS-Optionseinstellungen.

   ```
   {
   "OptionGroupName": "ssas-se-2017",
   "OptionsToInclude": [
   	{
   	"OptionName": "SSAS",
   	"Port": 2383,
   	"VpcSecurityGroupMemberships": ["sg-0abcdef123"],
   	"OptionSettings": [{"Name":"MAX_MEMORY","Value":"60"},{"Name":"MODE","Value":"Multidimensional"}]
   	}],
   "ApplyImmediately": true
   }
   ```

1. Fügen Sie die Option `SSAS` zur Optionsgruppe hinzu.  
**Example**  

   Für Linux, macOS oder Unix:

   ```
   aws rds add-option-to-option-group \
       --cli-input-json file://ssas-option.json \
       --apply-immediately
   ```

   Für Windows:

   ```
   aws rds add-option-to-option-group ^
       --cli-input-json file://ssas-option.json ^
       --apply-immediately
   ```

## Zuordnen der Optionsgruppe zu Ihrer DB-Instance
<a name="SSAS.Apply"></a>

Sie können die Konsole oder die CLI verwenden, um die Optionsgruppe Ihrer DB-Instance zuzuordnen.

### Konsole
<a name="SSAS.Apply.Console"></a>

Ordnen Sie Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zu:
+ Ordnen Sie bei einer neuen DB-Instance die Optionsgruppe der DB-Instance beim Start zu. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Ändern Sie für eine vorhandene DB-Instance die Instance und ordnen Sie ihr die neue Optionsgruppe zu. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).
**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 [Arbeiten mit Active Directory mit RDS für SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md).

### CLI
<a name="SSAS.Apply.CLI"></a>

Sie können Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zuordnen.

**Anmerkung**  
Wenn Sie eine vorhandene Instance verwenden, muss ihr bereits eine Active Directory-Domäne und eine 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 [Arbeiten mit Active Directory mit RDS für SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md).

**So erstellen Sie eine DB-Instance, welche die Optionsgruppe verwendet**
+ Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-db-instance \
      --db-instance-identifier myssasinstance \
      --db-instance-class db.m5.2xlarge \
      --engine sqlserver-se \
      --engine-version 14.00.3223.3.v1 \
      --allocated-storage 100 \
      --manage-master-user-password \
      --master-username admin \
      --storage-type gp2 \
      --license-model li \
      --domain-iam-role-name my-directory-iam-role \
      --domain my-domain-id \
      --option-group-name ssas-se-2017
  ```

  Für Windows:

  ```
  aws rds create-db-instance ^
      --db-instance-identifier myssasinstance ^
      --db-instance-class db.m5.2xlarge ^
      --engine sqlserver-se ^
      --engine-version 14.00.3223.3.v1 ^
      --allocated-storage 100 ^
      --manage-master-user-password ^
      --master-username admin ^
      --storage-type gp2 ^
      --license-model li ^
      --domain-iam-role-name my-directory-iam-role ^
      --domain my-domain-id ^
      --option-group-name ssas-se-2017
  ```

**So ändern Sie eine DB-Instance, um die Optionsgruppe zuzuordnen**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds modify-db-instance \
      --db-instance-identifier myssasinstance \
      --option-group-name ssas-se-2017 \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier myssasinstance ^
      --option-group-name ssas-se-2017 ^
      --apply-immediately
  ```

## Zulassen des eingehenden Zugriffs auf Ihre VPC-Sicherheitsgruppe
<a name="SSAS.InboundRule"></a>

Erstellen Sie eine Regel für eingehenden Datenverkehr für den angegebenen SSAS-Listener-Port in der VPC-Sicherheitsgruppe, die Ihrer DB-Instance zugeordnet ist. Weitere Informationen zum Einrichten von Sicherheitsgruppen finden Sie unter [Ermöglichen des Zugriffs auf Ihre DB-Instance in der VPC durch Erstellen einer Sicherheitsgruppe](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup).

## Aktivieren der Amazon-S3-Integration
<a name="SSAS.EnableS3"></a>

Verwenden Sie die Amazon-S3-Integration, um Modellkonfigurationsdateien für die Bereitstellung auf Ihren Host herunterzuladen. Weitere Informationen finden Sie unter [Integration einer Amazon RDS für SQL Server-DB-Instance mit Amazon S3](User.SQLServer.Options.S3-integration.md). 

# Bereitstellen von SSAS-Projekten auf Amazon RDS
<a name="SSAS.Deploy"></a>

Auf RDS können Sie SSAS-Projekte nicht direkt mithilfe von SQL Server Management Studio (SSMS) bereitstellen. Verwenden Sie zum Bereitstellen von Projekten eine gespeicherte RDS-Prozedur.

**Anmerkung**  
Die Verwendung von XMLA-Dateien für die Bereitstellung wird nicht unterstützt.

Stellen Sie vor der Bereitstellung von Projekten Folgendes sicher:
+ Die Amazon-S3-Integration ist aktiviert. Weitere Informationen finden Sie unter [Integration einer Amazon RDS für SQL Server-DB-Instance mit Amazon S3](User.SQLServer.Options.S3-integration.md).
+ Die `Processing Option`-Konfigurationseinstellung ist auf `Do Not Process` eingestellt. Diese Einstellung bedeutet, dass nach der Bereitstellung keine Verarbeitung erfolgt.
+ Sie verfügen über die Dateien `myssasproject.asdatabase` und `myssasproject.deploymentoptions`. Diese werden automatisch generiert, wenn Sie ein SSAS-Projekt erstellen.

**So stellen Sie ein SSAS-Projekt auf RDS bereit**

1. Laden Sie die `.asdatabase` (SSAS-Modell)-Datei aus Ihrem S3-Bucket in Ihre DB-Instance herunter, wie im folgenden Beispiel gezeigt. Weitere Informationen zu den Download-Parametern finden Sie unter [Herunterladen von Dateien aus einem Amazon S3-Bucket zu einer SQL Server-DB-Instance](Appendix.SQLServer.Options.S3-integration.using.md#Appendix.SQLServer.Options.S3-integration.using.download).

   ```
   exec msdb.dbo.rds_download_from_s3 
   @s3_arn_of_file='arn:aws:s3:::bucket_name/myssasproject.asdatabase', 
   [@rds_file_path='D:\S3\myssasproject.asdatabase'],
   [@overwrite_file=1];
   ```

1. Laden Sie die `.deploymentoptions`-Datei aus Ihrem S3-Bucket in Ihre DB-Instance herunter.

   ```
   exec msdb.dbo.rds_download_from_s3
   @s3_arn_of_file='arn:aws:s3:::bucket_name/myssasproject.deploymentoptions', 
   [@rds_file_path='D:\S3\myssasproject.deploymentoptions'],
   [@overwrite_file=1];
   ```

1. Stellen Sie das Projekt bereit.

   ```
   exec msdb.dbo.rds_msbi_task
   @task_type='SSAS_DEPLOY_PROJECT',
   @file_path='D:\S3\myssasproject.asdatabase';
   ```

# Überwachen des Status einer Bereitstellungsaufgabe
<a name="SSAS.Monitor"></a>

Rufen Sie die Funktion `rds_fn_task_status` auf, um den Status Ihrer Bereitstellungs- (oder Download)-Aufgabe zu verfolgen. Dazu sind zwei Parameter erforderlich. Der erste Parameter sollte immer `NULL` sein, da er sich nicht auf SSAS 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` | Für SSAS können Aufgaben die folgenden Aufgabentypen haben: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/SSAS.Monitor.html)  | 
| `database_name` | Gilt nicht für SSAS-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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/SSAS.Monitor.html)  | 
| `task_info` | Zusätzliche Informationen über die Aufgabe. Wenn bei der Verarbeitung ein Fehler auftritt, enthält diese Spalte Informationen zu dem Fehler. Weitere Informationen finden Sie unter [Fehlerbehebung von SSAS-Problemen](SSAS.Trouble.md). | 
| `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 SSAS-Aufgaben.  | 
| `overwrite_S3_backup_file` | Gilt nicht für SSAS-Aufgaben. | 
| `KMS_master_key_arn` |  Gilt nicht für SSAS-Aufgaben.  | 
| `filepath` |  Gilt nicht für SSAS-Aufgaben.  | 
| `overwrite_file` |  Gilt nicht für SSAS-Aufgaben.  | 
| `task_metadata` | Metadaten, die der SSAS-Aufgabe zugeordnet sind. | 

# Verwenden von SSAS auf Amazon RDS
<a name="SSAS.Use"></a>

Nach der Bereitstellung des SSAS-Projekts können Sie die OLAP-Datenbank direkt auf SSMS verarbeiten.

**So verwenden Sie SSAS auf RDS**

1. Stellen Sie in SSMS eine Verbindung mit SSAS her, indem Sie den Benutzernamen und das Passwort für die Active Directory-Domäne verwenden.

1. Erweitern Sie **Databases (Datenbanken)**. Die neu bereitgestellte SSAS-Datenbank wird angezeigt.

1. Suchen Sie nach der Verbindungszeichenfolge und aktualisieren Sie den Benutzernamen und das Passwort, um Zugriff auf die SQL-Quelldatenbank zu erteilen. Dies ist für die Verarbeitung von SSAS-Objekten erforderlich.

   1. Führen Sie für den tabellarischen Modus folgende Schritte aus:

      1. Zeigen Sie die Registerkarte **Connections** (Verbindungen) an.

      1. Öffnen Sie das Kontextmenü (rechte Maustaste) für das Verbindungsobjekt und wählen Sie dann **Properties** (Eigenschaften) aus.

      1. Aktualisieren Sie den Benutzernamen und das Passwort in der Verbindungszeichenfolge.

   1. Führen Sie für den multidimensionalen Modus folgende Schritte aus:

      1. Zeigen Sie die Registerkarte **Data Sources** (Datenquellen) an.

      1. Öffnen Sie das Kontextmenü (rechte Maustaste) für das Datenquellobjekt und wählen Sie dann **Properties** (Eigenschaften) aus.

      1. Aktualisieren Sie den Benutzernamen und das Passwort in der Verbindungszeichenfolge.

1. Öffnen Sie das Kontextmenü (rechte Maustaste) für die SSAS-Datenbank, die Sie erstellt haben, und wählen Sie **Process Database (Datenbank verarbeiten)** aus.

   Abhängig vom Umfang der Eingabedaten kann der Verarbeitungsvorgang einige Minuten dauern.

**Topics**
+ [

## Einrichten eines Windows-authentifizierten Benutzers für SSAS
](#SSAS.Use.Auth)
+ [

## Hinzufügen eines Domänenbenutzers als Datenbankadministrator
](#SSAS.Admin)
+ [

## Erstellen eines SSAS-Proxys
](#SSAS.Use.Proxy)
+ [

## Planen der SSAS-Datenbankverarbeitung mit SQL Server Agent
](#SSAS.Use.Schedule)
+ [

## Widerrufen des SSAS-Zugriffs vom Proxy
](#SSAS.Use.Revoke)

## Einrichten eines Windows-authentifizierten Benutzers für SSAS
<a name="SSAS.Use.Auth"></a>

Der Hauptadministrator (manchmal auch als Hauptnutzer bezeichnet) kann das folgende Codebeispiel verwenden, um eine Windows-authentifizierte Anmeldung einzurichten und die erforderlichen Prozessberechtigungen zu erteilen. Dadurch werden dem Domänenbenutzer Berechtigungen zum Ausführen von SSAS-Kundenaufgaben, 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)](https://docs.microsoft.com/en-us/sql/relational-databases/security/authentication-access/credentials-database-engine?view=sql-server-ver15) und [Erstellen eines SQL Server-Agent-Proxys](https://docs.microsoft.com/en-us/sql/ssms/agent/create-a-sql-server-agent-proxy?view=sql-server-ver15) in der Microsoft-Dokumentation.

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

**Example**  

```
-- Create a server-level domain user login, if it doesn't already exist
USE [master]
GO
CREATE LOGIN [mydomain\user_name] FROM WINDOWS
GO

-- Create domain user, if it doesn't already exist
USE [msdb]
GO
CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name]
GO

-- Grant necessary privileges to the domain user
USE [master]
GO
GRANT ALTER ANY CREDENTIAL TO [mydomain\user_name]
GO

USE [msdb]
GO
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
```

## Hinzufügen eines Domänenbenutzers als Datenbankadministrator
<a name="SSAS.Admin"></a>

Sie können einen Domänenbenutzer als SSAS-Datenbankadministrator auf folgende Weise hinzufügen:
+ Ein Datenbankadministrator kann SSMS verwenden, um eine Rolle mit der Berechtigung `admin` zu erstellen und dann Benutzer zu dieser Rolle hinzufügen.
+ Sie können die folgende gespeicherte Prozedur verwenden.

  ```
  exec msdb.dbo.rds_msbi_task
  @task_type='SSAS_ADD_DB_ADMIN_MEMBER',
  @database_name='myssasdb',
  @ssas_role_name='exampleRole',
  @ssas_role_member='domain_name\domain_user_name';
  ```

  Die folgenden Parameter sind erforderlich:
  + `@task_type` – Der Typ der MSBI-Aufgabe, in diesem Fall `SSAS_ADD_DB_ADMIN_MEMBER`.
  + `@database_name` – Der Name der SSAS-Datenbank, der Sie Administratorrechte gewähren.
  + `@ssas_role_name` – Der Name der SSAS-Datenbankadministratorrolle. Wenn die Rolle noch nicht vorhanden ist, wird sie erstellt.
  + `@ssas_role_member` – Der SSAS-Datenbankbenutzer, den Sie der Administratorrolle hinzufügen.

## Erstellen eines SSAS-Proxys
<a name="SSAS.Use.Proxy"></a>

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

**Erstellen von SSAS-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 [SSAS_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.

**Erstellen des SSAS-Proxys**

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

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSAS_Proxy',@credential_name=N'SSAS_Credential',@description=N''
   GO
   ```

1. 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'SSAS_Proxy',@login_name=N'mydomain\user_name'
   GO
   ```

1. Verwenden Sie die folgende SQL-Anweisung, um dem SSAS-Subsystem Zugriff auf den Proxy zu gewähren.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS'
   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
   ```

1. Verwenden Sie die folgende SQL-Anweisung, um die Subsystemzuweisungen anzuzeigen.

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

## Planen der SSAS-Datenbankverarbeitung mit SQL Server Agent
<a name="SSAS.Use.Schedule"></a>

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

**Planen der SSAS-Datenbankverarbeitung**
+ Verwenden Sie SSMS oder T-SQL zum Erstellen des SQL-Server-Agent-Auftrags. Im folgenden Beispiel wird T-SQL verwendet. Sie können den Auftragszeitplan über SSMS oder T-SQL weiter konfigurieren.
  + Der Parameter `@command` beschreibt den Befehl XML for Analysis (XMLA), der vom SQL-Server-Agent-Auftrag ausgeführt werden soll. In diesem Beispiel wird die mehrdimensionale SSAS-Datenbankverarbeitung konfiguriert.
  + Der Parameter `@server` beschreibt den Ziel-SSAS-Servernamen des SQL-Server-Agent-Auftrags.

    Um den SSAS-Dienst innerhalb derselben RDS-DB-Instance aufzurufen, in der sich der SQL-Server-Agent-Auftrag befindet, verwenden Sie `localhost:2383`.

    Um den SSAS-Dienst von außerhalb der RDS-DB-Instance aufzurufen, verwenden Sie den RDS-Endpunkt. Sie können auch den Endpunkt von Kerberos Active Directory (AD) verwenden (`your-DB-instance-name.your-AD-domain-name`) wenn die RDS-DB-Instances von derselben Domäne verbunden werden. Stellen Sie bei externen DB-Instances sicher, dass Sie die VPC-Sicherheitsgruppe, die mit der RDS-DB-Instance verknüpft ist, ordnungsgemäß für eine sichere Verbindung konfigurieren.

  Sie können die Abfrage weiter bearbeiten, um verschiedene XMLA-Operationen zu unterstützen. Nehmen Sie Änderungen vor, indem Sie die T-SQL-Abfrage direkt ändern oder die SSMS-Benutzeroberfläche nach der Erstellung von SQL-Server-Agent-Aufträgen verwenden.

  ```
  USE [msdb]
  GO
  DECLARE @jobId BINARY(16)
  EXEC msdb.dbo.sp_add_job @job_name=N'SSAS_Job', 
      @enabled=1, 
      @notify_level_eventlog=0, 
      @notify_level_email=0, 
      @notify_level_netsend=0, 
      @notify_level_page=0, 
      @delete_level=0, 
      @category_name=N'[Uncategorized (Local)]', 
      @job_id = @jobId OUTPUT
  GO
  EXEC msdb.dbo.sp_add_jobserver 
      @job_name=N'SSAS_Job', 
      @server_name = N'(local)'
  GO
  EXEC msdb.dbo.sp_add_jobstep @job_name=N'SSAS_Job', @step_name=N'Process_SSAS_Object', 
      @step_id=1, 
      @cmdexec_success_code=0, 
      @on_success_action=1, 
      @on_success_step_id=0, 
      @on_fail_action=2, 
      @on_fail_step_id=0, 
      @retry_attempts=0, 
      @retry_interval=0, 
      @os_run_priority=0, @subsystem=N'ANALYSISCOMMAND', 
      @command=N'<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
          <Parallel>
              <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
                  xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" 
                  xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" 
                  xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" 
                  xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" 
                  xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" 
                  xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500">
                  <Object>
                      <DatabaseID>Your_SSAS_Database_ID</DatabaseID>
                  </Object>
                  <Type>ProcessFull</Type>
                  <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
              </Process>
          </Parallel>
      </Batch>', 
      @server=N'localhost:2383', 
      @database_name=N'master', 
      @flags=0, 
      @proxy_name=N'SSAS_Proxy'
  GO
  ```

## Widerrufen des SSAS-Zugriffs vom Proxy
<a name="SSAS.Use.Revoke"></a>

Sie können den Zugriff auf das SSAS-Subsystem widerrufen und den SSAS-Proxy mithilfe der folgenden gespeicherten Prozesse 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='SSAS_Proxy',@proxy_subsystem='SSAS'
   GO
   ```

1. Widerrufen Sie die für den erteilten Berechtigungen Proxy.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSAS_Proxy',@name=N'mydomain\user_name'
   GO
   ```

1. Löschen Sie den Proxy.

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

# Sichern einer SSAS-Datenbank
<a name="SSAS.Backup"></a>

Sie können SSAS-Datenbanksicherungsdateien nur im Ordner `D:\S3` der DB-Instance erstellen. Verwenden Sie Amazon S3, um die Sicherungsdateien in Ihren S3-Bucket zu verschieben.

Sie können eine SSAS-Datenbank wie folgt sichern:
+ Ein Domänenbenutzer mit der Rolle `admin` für eine bestimmte Datenbank kann SSMS verwenden, um die Datenbank im Ordner `D:\S3` zu sichern.

  Weitere Informationen finden Sie unter [Hinzufügen eines Domänenbenutzers als Datenbankadministrator](SSAS.Use.md#SSAS.Admin).
+ Sie können die folgende gespeicherte Prozedur verwenden. Der gespeicherte Prozess unterstützt keine Verschlüsselung.

  ```
  exec msdb.dbo.rds_msbi_task
  @task_type='SSAS_BACKUP_DB',
  @database_name='myssasdb',
  @file_path='D:\S3\ssas_db_backup.abf',
  [@ssas_apply_compression=1],
  [@ssas_overwrite_file=1];
  ```

  Die folgenden Parameter sind erforderlich:
  + `@task_type` – Der Typ der MSBI-Aufgabe, in diesem Fall `SSAS_BACKUP_DB`.
  + `@database_name` – Der Name der SSAS-Datenbank, die Sie sichern.
  + `@file_path` – Der Pfad für die SSAS-Sicherungsdatei. Die Erweiterung `.abf` ist erforderlich.

  Die folgenden Parameter sind optional:
  + `@ssas_apply_compression` – Gibt an, ob SSAS-Sicherungen komprimiert werden sollen. Gültige Werte sind 1 (Ja) und 0 (Nein).
  + `@ssas_overwrite_file` – Gibt an, ob die SSAS-Sicherungsdatei überschrieben werden soll. Gültige Werte sind 1 (Ja) und 0 (Nein).

# Wiederherstellen einer SSAS-Datenbank
<a name="SSAS.Restore"></a>

Verwenden Sie die folgende gespeicherte Prozedur, um eine SSAS-Datenbank aus einer Sicherung wiederherzustellen. 

Sie können eine Datenbank nicht wiederherstellen, wenn eine vorhandene SSAS-Datenbank mit demselben Namen vorhanden ist. Die gespeicherte Prozedur zum Wiederherstellen unterstützt keine verschlüsselten Sicherungsdateien.

```
exec msdb.dbo.rds_msbi_task
@task_type='SSAS_RESTORE_DB',
@database_name='mynewssasdb',
@file_path='D:\S3\ssas_db_backup.abf';
```

Die folgenden Parameter sind erforderlich:
+ `@task_type` – Der Typ der MSBI-Aufgabe, in diesem Fall `SSAS_RESTORE_DB`.
+ `@database_name` – Der Name der neuen SSAS-Datenbank, in der Sie die Wiederherstellung durchführen.
+ `@file_path` – Der Pfad zur SSAS-Sicherungsdatei.

## Wiederherstellen einer DB-Instance zu einer bestimmten Zeit
<a name="SSAS.PITR"></a>

Zeitpunktbezogene Wiederherstellung (PITR) gilt nicht für SSAS-Datenbanken. Wenn Sie PITR ausführen, sind nur die SSAS-Daten im letzten Snapshot vor der angeforderten Zeit auf der wiederhergestellten Instance verfügbar.

**So haben Sie aktuelle SSAS-Datenbanken auf einer wiederhergestellten DB-Instance**

1. Sichern Sie Ihre SSAS-Datenbanken im Ordner `D:\S3` der Quellinstance.

1. Übertragen Sie die Sicherungsdateien in den S3-Bucket.

1. Übertragen Sie die Sicherungsdateien aus dem S3-Bucket in den Ordner `D:\S3` auf der wiederhergestellten Instance.

1. Führen Sie die gespeicherte Prozedur aus, um die SSAS-Datenbanken auf der wiederhergestellten Instance wiederherzustellen.

   Sie können das SSAS-Projekt auch erneut verarbeiten, um die Datenbanken wiederherzustellen.

# Ändern des SSAS-Modus
<a name="SSAS.ChangeMode"></a>

Sie können den Modus ändern, in dem SSAS ausgeführt wird – entweder tabellarisch oder mehrdimensional. Um den Modus zu ändern, verwenden Sie die AWS-Managementkonsole oder das AWS CLI, um die Optionseinstellungen in der SSAS-Option zu ändern.

**Wichtig**  
Sie können jeweils nur einen SSAS-Modus verwenden. Stellen Sie sicher, dass Sie alle SSAS-Datenbanken löschen, bevor Sie den Modus ändern, da Sie ansonsten einen Fehler erhalten.

## Konsole
<a name="SSAS.ChangeMode.CON"></a>

Der folgende Amazon-RDS-Konsolenprozess ändert den SSAS-Modus in „Tabellarisch“ und legt den Parameter `MAX_MEMORY` auf 70 Prozent fest.

**Ändern der SSAS-Option**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der Option `SSAS` (`ssas-se-2017` in den vorherigen Beispielen), die Sie ändern möchten.

1. Wählen Sie **Modify option** (Option ändern) aus.

1. Ändern Sie die Optionseinstellungen:

   1. Geben Sie für **Max memory** (Maximaler Speicher) **70** ein.

   1. Wählen Sie für **Mode** (Modus) **Tabular** (Tabellarisch) aus.

1. Wählen Sie **Modify option** (Option ändern) aus.

## AWS CLI
<a name="SSAS.ChangeMode.CLI"></a>

Das folgende AWS CLI-Beispiel ändert den SSAS-Modus in „Tabellarisch“ und legt den Parameter `MAX_MEMORY` auf 70 % fest.

Damit der CLI-Befehl funktioniert, stellen Sie sicher, dass Sie alle erforderlichen Parameter angeben, auch wenn Sie sie nicht ändern.

**Ändern der SSAS-Option**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds add-option-to-option-group \
      --option-group-name ssas-se-2017 \
      --options "OptionName=SSAS,VpcSecurityGroupMemberships=sg-12345e67,OptionSettings=[{Name=MAX_MEMORY,Value=70},{Name=MODE,Value=Tabular}]" \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds add-option-to-option-group ^
      --option-group-name ssas-se-2017 ^
      --options OptionName=SSAS,VpcSecurityGroupMemberships=sg-12345e67,OptionSettings=[{Name=MAX_MEMORY,Value=70},{Name=MODE,Value=Tabular}] ^
      --apply-immediately
  ```

# Deaktivieren von SSAS
<a name="SSAS.Disable"></a>

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

**Wichtig**  
Bevor Sie die Option `SSAS` entfernen, löschen Sie Ihre SSAS-Datenbanken.  
Wir empfehlen dringend, dass Sie Ihre SSAS-Datenbanken sichern, bevor Sie sie löschen und die Option `SSAS` entfernen.

## Konsole
<a name="SSAS.Disable.Console"></a>

**So entfernen Sie die SSAS-Option aus der Optionsgruppe**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der Option `SSAS` (`ssas-se-2017` in den vorherigen Beispielen), die Sie entfernen möchten.

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

1. Wählen Sie unter **Deletion options (Löschoptionen)** für **Options to delete (Zu löschende Optionen)** die Option **SSAS** aus.

1. 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.

1. Wählen Sie **Delete (Löschen)**.

## AWS CLI
<a name="SSAS.Disable.CLI"></a>

**So entfernen Sie die SSAS-Option aus der Optionsgruppe**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds remove-option-from-option-group \
      --option-group-name ssas-se-2017 \
      --options SSAS \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds remove-option-from-option-group ^
      --option-group-name ssas-se-2017 ^
      --options SSAS ^
      --apply-immediately
  ```

# Fehlerbehebung von SSAS-Problemen
<a name="SSAS.Trouble"></a>

Bei der Verwendung von SSAS können die folgenden Probleme auftreten.


| Problem | Typ | Vorschläge für die Fehlerbehebung | 
| --- | --- | --- | 
| Die SSAS-Option kann nicht konfiguriert werden. Der angeforderte SSAS-Modus lautet new\$1mode, aber die aktuelle DB-Instance hat die Datenbanken number current\$1mode. Löschen Sie die vorhandenen Datenbanken bevor Sie zum Modus new\$1mode wechseln. Um erneut Zugriff auf den Modus current\$1mode zum Löschen einer Datenbank zu erhalten, können Sie entweder die aktuelle DB-Optionsgruppe aktualisieren oder eine neue Optionsgruppe mit %s als MODUS-Optionseinstellungswert für die SSAS-Option anfügen. | RDS-Ereignis | Sie können den SSAS-Modus nicht ändern, wenn Sie immer noch SSAS-Datenbanken haben, die den aktuellen Modus verwenden. Löschen Sie die SSAS-Datenbanken und versuchen Sie es dann erneut. | 
| Die SSAS-Option kann nicht entfernt werden, da es Datenbanken mit dem Modus number existing gibt. Die SSAS-Option kann erst entfernt werden, wenn alle SSAS-Datenbanken gelöscht wurden. Fügen Sie die SSAS-Option erneut hinzu, löschen Sie alle SSAS-Datenbanken und versuchen Sie es erneut. | RDS-Ereignis | Sie können SSAS nicht deaktivieren, wenn Sie noch SSAS-Datenbanken haben. Löschen Sie die SSAS-Datenbanken und versuchen Sie es dann erneut. | 
| Die SSAS-Option ist nicht aktiviert oder wird gerade aktiviert. Bitte versuchen Sie es später erneut. | Gespeicherte RDS-Prozesse | Sie können gespeicherte SSAS-Prozesse nicht ausführen, wenn die Option deaktiviert ist oder erneut aktiviert wird. | 
| Die SSAS-Option ist falsch konfiguriert. Stellen Sie sicher, dass der Mitgliedschaftsstatus der Optionsgruppe „in-sync“ lautet, und überprüfen Sie die RDS-Ereignisprotokolle auf relevante SSAS-Konfigurationsfehlermeldungen. Versuchen Sie es im Anschluss erneut. Wenn weiterhin Fehler auftreten, wenden Sie sich an den AWS-Support. | Gespeicherte RDS-Prozesse |  Sie können keine gespeicherten SSAS-Prozesse ausführen, wenn Ihre Mitgliedschaft für die Optionsgruppe sich nicht im Status `in-sync` befindet. Dies versetzt die SSAS-Option in einen falschen Konfigurationsstatus. Wenn sich der Mitgliedschaftsstatus Ihrer Optionsgruppe aufgrund der Änderung der SSAS-Option in `failed` ändert, gibt es zwei mögliche Gründe:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/SSAS.Trouble.html) Konfigurieren Sie die SSAS-Option neu, da RDS jeweils nur einen SSAS-Modus zulässt und das Entfernen von SSAS-Optionen bei vorhandenen SSAS-Datenbanken nicht unterstützt. Überprüfen Sie die RDS-Ereignisprotokolle auf Konfigurationsfehler für Ihre SSAS-Instance und beheben Sie die Probleme entsprechend.  | 
| Bereitstellung fehlgeschlagen. Die Änderung kann nur auf einem Server bereitgestellt werden, der im Modus deployment\$1file\$1mode ausgeführt wird. Der aktuelle Servermodus lautet current\$1mode. | Gespeicherte RDS-Prozesse |  Sie können eine tabellarische Datenbank nicht auf einem mehrdimensionalen Server oder eine mehrdimensionale Datenbank nicht auf einem tabellarischen Server bereitstellen. Stellen Sie sicher, dass Sie Dateien mit dem richtigen Modus verwenden, und überprüfen Sie, ob für die Optionseinstellung `MODE` der entsprechende Wert festgelegt wurde.  | 
| Die Wiederherstellung ist fehlgeschlagen. Die Backup-Datei kann nur auf einem Server wiederhergestellt werden, der im Modus restore\$1file\$1mode ausgeführt wird. Der aktuelle Servermodus lautet current\$1mode. | Gespeicherte RDS-Prozesse |  Sie können eine tabellarische Datenbank nicht auf einem mehrdimensionalen Server oder eine mehrdimensionale Datenbank auf einem tabellarischen Server wiederherstellen. Stellen Sie sicher, dass Sie Dateien mit dem richtigen Modus verwenden, und überprüfen Sie, ob für die Optionseinstellung `MODE` der entsprechende Wert festgelegt wurde.  | 
| Die Wiederherstellung ist fehlgeschlagen. Die Backup-Datei und die RDS-DB-Instance-Versionen sind nicht kompatibel. | Gespeicherte RDS-Prozesse |  Sie können eine SSAS-Datenbank nicht mit einer Version wiederherstellen, die mit der SQL-Server-Instance-Version nicht kompatibel ist. Weitere Informationen finden Sie unter [Compatibility levels for tabular models](https://docs.microsoft.com/en-us/analysis-services/tabular-models/compatibility-level-for-tabular-models-in-analysis-services) und unter [Compatibility level of a multidimensional database](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/compatibility-level-of-a-multidimensional-database-analysis-services) in der Microsoft-Dokumentation.  | 
| Die Wiederherstellung ist fehlgeschlagen. Die im Wiederherstellungsvorgang angegebene Backup-Datei ist beschädigt oder ist keine SSAS-Backup-Datei. Stellen Sie sicher, dass @rds\$1file\$1path korrekt formatiert ist. | Gespeicherte RDS-Prozesse |  Sie können eine SSAS-Datenbank nicht mit einer beschädigten Datei wiederherstellen. Stellen Sie sicher, dass die Datei nicht beschädigt oder fehlerhaft ist. Dieser Fehler kann auch ausgelöst werden, wenn `@rds_file_path` nicht richtig formatiert ist (wenn beispielsweise doppelte Backslashes wie in `D:\S3\\incorrect_format.abf` enthalten sind).  | 
| Die Wiederherstellung ist fehlgeschlagen. Der Name der wiederhergestellten Datenbank darf keine reservierten Wörter oder die folgenden ungültigen Zeichen enthalten . , ; ' ` : / \$1\$1 \$1 \$1 ? \$1" & % \$1 \$1 \$1 = ( ) [ ] \$1 \$1 < >, oder länger als 100 Zeichen sein. | Gespeicherte RDS-Prozesse |  Der Name der wiederhergestellten Datenbank darf keine reservierten Wörter oder ungültigen Zeichen enthalten oder länger als 100 Zeichen sein. Informationen zu SSAS-Objektbenennungskonventionen finden Sie unter [Object naming rules](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/olap-physical/object-naming-rules-analysis-services) in der Microsoft-Dokumentation.  | 
| Es wurde ein ungültiger Rollenname angegeben. Der Rollenname darf keine reservierten Strings enthalten. | Gespeicherte RDS-Prozesse |  Der Rollenname darf keine reservierten Strings enthalten. Informationen zu SSAS-Objektbenennungskonventionen finden Sie unter [Object naming rules](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/olap-physical/object-naming-rules-analysis-services) in der Microsoft-Dokumentation.  | 
| Es wurde ein ungültiger Rollenname angegeben. Der Rollenname darf keines der folgenden reservierten Zeichen enthalten: . , ; ' ` : / \$1\$1 \$1 \$1 ? \$1" & % \$1 \$1 \$1 = ( ) [ ] \$1 \$1 < > | Gespeicherte RDS-Prozesse |  Der Rollenname darf keine reservierten Zeichen enthalten. Informationen zu SSAS-Objektbenennungskonventionen finden Sie unter [Object naming rules](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/olap-physical/object-naming-rules-analysis-services) in der Microsoft-Dokumentation.  | 

# Unterstützung für SQL Server Integration Services in Amazon RDS für SQL Server
<a name="Appendix.SQLServer.Options.SSIS"></a>

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 für 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 2022, alle 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

**Contents**
+ [

## Einschränkungen und Empfehlungen
](#SSIS.Limitations)
+ [

## Aktivieren von SSIS
](#SSIS.Enabling)
  + [

### Erstellen der Optionsgruppe für SSIS
](#SSIS.OptionGroup)
  + [

### Hinzufügen der SSIS-Option zur Optionsgruppe
](#SSIS.Add)
  + [

### Erstellen der Parametergruppe für SSIS
](#SSIS.CreateParamGroup)
  + [

### Ändern des Parameters für SSIS
](#SSIS.ModifyParam)
  + [

### Zuordnen der Options- und Parametergruppe zu Ihrer DB-Instance
](#SSIS.Apply)
  + [

### Aktivieren der S3-Integration
](#SSIS.EnableS3)
+ [

# Administrative Berechtigungen auf SSISDB
](SSIS.Permissions.md)
  + [

## Einrichten eines Windows-authentifizierten Benutzers für SSIS
](SSIS.Permissions.md#SSIS.Use.Auth)
+ [

# Bereitstellen eines SSIS-Projekts
](SSIS.Deploy.md)
+ [

# Überwachen des Status einer Bereitstellungsaufgabe
](SSIS.Monitor.md)
+ [

# Verwenden von SSIS
](SSIS.Use.md)
  + [

## Festlegen von Datenbankverbindungs-Managern für SSIS-Projekte
](SSIS.Use.md#SSIS.Use.ConnMgrs)
  + [

## Erstellen eines SSIS-Proxys
](SSIS.Use.md#SSIS.Use.Proxy)
  + [

## Planen eines SSIS-Pakets mit SQL Server-Agent
](SSIS.Use.md#SSIS.Use.Schedule)
  + [

## Widerrufen des SSIS-Zugriffs vom Proxy
](SSIS.Use.md#SSIS.Use.Revoke)
+ [

# Deaktivieren und Entfernen einer SSIS-Datenbank
](SSIS.DisableDrop.md)
  + [

## Deaktivieren von SSIS
](SSIS.DisableDrop.md#SSIS.Disable)
  + [

## Löschen der SSISDB-Datenbank
](SSIS.DisableDrop.md#SSIS.Drop)

## Einschränkungen und Empfehlungen
<a name="SSIS.Limitations"></a>

Die folgenden Einschränkungen und Empfehlungen gelten für die Ausführung von SSIS auf RDS für SQL Server:
+ 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](#SSIS.ModifyParam).
**Anmerkung**  
Wenn Sie den Parameter `clr enabled` auf SQL Server 2017 oder 2019 aktivieren, können Sie die Common Language Runtime (CLR) auf Ihrer DB-Instance nicht verwenden. Weitere Informationen finden Sie unter [Nicht unterstützte Funktionen und Funktionen mit beschränkter Unterstützung](SQLServer.Concepts.General.FeatureNonSupport.md).
+ 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.
+ SSIS-Protokolldatensätze können nur in vom Benutzer erstellte Datenbanken eingefügt werden.
+ 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](User.SQLServer.Options.S3-integration.md#S3-MAZ).
  + 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](SSIS.Deploy.md).
+ 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.
+ Sie können eine Verbindung mit anderen DB-Instances von SQL Server oder mit einer Oracle-Datenquelle herstellen. Die Verbindung zu anderen Datenbank-Engines wie MySQL oder PostgreSQL wird für SSIS auf RDS für SQL Server nicht unterstützt. Weitere Informationen zum Herstellen einer Verbindung mit einer Oracle-Datenquelle finden Sie unter [Mit Oracle OLEDB verknüpfte Server](Appendix.SQLServer.Options.LinkedServers_Oracle_OLEDB.md). 
+ SSIS unterstützt keine in eine Domäne eingebundene Instance mit einer ausgehenden Vertrauensstellung zu einer On-Premises-Domäne. Wenn Sie eine ausgehende Vertrauensstellung verwenden, führen Sie den SSIS-Job von einem Konto in der lokalen AWS Domäne aus.
+ Die Ausführung von Dateisystem-basierten Paketen wird nicht unterstützt.

## Aktivieren von SSIS
<a name="SSIS.Enabling"></a>

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.

1. Fügen Sie die Option `SSIS` zur Optionsgruppe hinzu.

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

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

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

1. 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
<a name="SSIS.OptionGroup"></a>

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 das AWS-Managementkonsole oder das AWS CLI.

#### Konsole
<a name="SSIS.OptionGroup.Console"></a>

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 an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. 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 eindeutig ist, z. **ssis-se-2016** B. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

   1. 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. 

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

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

1. Wählen Sie **Erstellen** aus.

#### CLI
<a name="SSIS.OptionGroup.CLI"></a>

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.  
**Example**  

  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
<a name="SSIS.Add"></a>

Verwenden Sie als Nächstes das AWS-Managementkonsole oder, AWS CLI um die `SSIS` Option zu Ihrer Optionsgruppe hinzuzufügen.

#### Konsole
<a name="SSIS.Add.Console"></a>

**So fügen Sie die SSIS-Option hinzu**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

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

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

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

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

#### CLI
<a name="SSIS.Add.CLI"></a>

**So fügen Sie die SSIS-Option hinzu**
+ Fügen Sie die Option `SSIS` zur Optionsgruppe hinzu.  
**Example**  

  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
<a name="SSIS.CreateParamGroup"></a>

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.

#### Konsole
<a name="SSIS.CreateParamGroup.Console"></a>

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 an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. 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.

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

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

1. Wählen Sie **Create** aus.

#### CLI
<a name="SSIS.CreateParamGroup.CLI"></a>

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.  
**Example**  

  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
<a name="SSIS.ModifyParam"></a>

Ä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.

#### Konsole
<a name="SSIS.ModifyParam.Console"></a>

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 an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. Filtern Sie unter **Parameter** die Parameterliste nach **clr**.

1. Wählen Sie **clr enabled**.

1. Wählen Sie **Parameter bearbeiten** aus.

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

1. Wählen Sie **Änderungen speichern ** aus.

#### CLI
<a name="SSIS.ModifyParam.CLI"></a>

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.  
**Example**  

  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
<a name="SSIS.Apply"></a>

Um die SSIS-Optionsgruppe und die Parametergruppe mit Ihrer DB-Instance zu verknüpfen, verwenden Sie den oder AWS-Managementkonsole AWS CLI 

**Anmerkung**  
Wenn Sie eine vorhandene Instance verwenden, muss dieser bereits eine Active Directory-Domäne und 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 [Arbeiten mit Active Directory mit RDS für SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md).

#### Konsole
<a name="SSIS.Apply.Console"></a>

Um die Aktivierung von SSIS abzuschließen, ordnen Sie Ihre SSIS-Optionsgruppe und Parametergruppe einer neuen oder vorhandenen DB-Instance zu:
+ Ordnen Sie sie bei einer neuen DB-Instance zu, wenn Sie die Instance starten. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Ordnen Sie sie für eine vorhandene DB-Instance zu, indem Sie die Instance ändern. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

#### CLI
<a name="SSIS.Apply.CLI"></a>

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.  
**Example**  

  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 \
      --manage-master-user-password \
      --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 ^
      --manage-master-user-password ^
      --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.  
**Example**  

  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
<a name="SSIS.EnableS3"></a>

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 für SQL Server-DB-Instance mit Amazon S3](User.SQLServer.Options.S3-integration.md).

# Administrative Berechtigungen auf SSISDB
<a name="SSIS.Permissions"></a>

Wenn die Instance mit der Option SSIS erstellt oder geändert wird, ist das Ergebnis eine SSISDB-Datenbank mit den Rollen ssis\$1admin und ssis\$1logreader, die dem Masterbenutzer erteilt werden. Der Master-Benutzer verfügt über die folgenden Berechtigungen in SSISDB:
+ auf ssis\$1admin Rolle ändern
+ auf ssis\$1logreader-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\$1admin und ssis\$1logreader 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
<a name="SSIS.Use.Auth"></a>

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)](https://docs.microsoft.com/en-us/sql/relational-databases/security/authentication-access/credentials-database-engine?view=sql-server-ver15) und [Erstellen eines SQL Server-Agent-Proxys](https://docs.microsoft.com/en-us/sql/ssms/agent/create-a-sql-server-agent-proxy?view=sql-server-ver15) in der Microsoft-Dokumentation.

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

**Example**  

```
-- Create a server-level SQL login for the domain user, if it doesn't already exist
USE [master]
GO
CREATE LOGIN [mydomain\user_name] FROM WINDOWS
GO						
						
-- Create a database-level account for the domain user, if it doesn't already exist						
USE [SSISDB]
GO
CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name]

-- Add SSIS role membership to the domain user
ALTER ROLE [ssis_admin] ADD MEMBER [mydomain\user_name]
ALTER ROLE [ssis_logreader] ADD MEMBER [mydomain\user_name]
GO

-- Add MSDB role membership to the domain user
USE [msdb]
GO
CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name]

-- Grant MSDB stored procedure privileges to the domain user
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


-- Add the SQLAgentUserRole privilege to the domain user
USE [msdb]
GO
ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain\user_name]
GO

-- Grant the ALTER ANY CREDENTIAL privilege to the domain user
USE [master]
GO
GRANT ALTER ANY CREDENTIAL TO [mydomain\user_name]
GO
```

# Bereitstellen eines SSIS-Projekts
<a name="SSIS.Deploy"></a>

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](SSIS.Permissions.md#SSIS.Use.Auth).

**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;
   ```

1. Ü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
<a name="SSIS.Monitor"></a>

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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/SSIS.Monitor.html)  | 
| `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
<a name="SSIS.Use"></a>

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](SSIS.Permissions.md#SSIS.Use.Auth).

**Topics**
+ [

## Festlegen von Datenbankverbindungs-Managern für SSIS-Projekte
](#SSIS.Use.ConnMgrs)
+ [

## Erstellen eines SSIS-Proxys
](#SSIS.Use.Proxy)
+ [

## Planen eines SSIS-Pakets mit SQL Server-Agent
](#SSIS.Use.Schedule)
+ [

## Widerrufen des SSIS-Zugriffs vom Proxy
](#SSIS.Use.Revoke)

## Festlegen von Datenbankverbindungs-Managern für SSIS-Projekte
<a name="SSIS.Use.ConnMgrs"></a>

Bei Einsatz eines Verbindungs-Managers können Sie die folgenden Authentifizierungstypen verwenden:
+ Für lokale Datenbankverbindungen mit AWS Managed Active Directory 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.
+ Für lokale Datenbankverbindungen mit selbstverwaltetem Active Directory können Sie die SQL-Authentifizierung oder die Windows-Authentifizierung verwenden. Verwenden Sie für die Windows-Authentifizierung `.` oder `LocalHost` als Servername der Verbindungszeichenfolge.

## Erstellen eines SSIS-Proxys
<a name="SSIS.Use.Proxy"></a>

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
   ```

1. 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
   ```

1. 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
   ```

1. 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
<a name="SSIS.Use.Schedule"></a>

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
<a name="SSIS.Use.Revoke"></a>

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
   ```

1. 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
   ```

1. Löschen Sie den Proxy.

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

# Deaktivieren und Entfernen einer SSIS-Datenbank
<a name="SSIS.DisableDrop"></a>

Führen Sie die folgenden Schritte aus, um SSIS-Datenbanken zu deaktivieren oder zu entfernen:

**Topics**
+ [

## Deaktivieren von SSIS
](#SSIS.Disable)
+ [

## Löschen der SSISDB-Datenbank
](#SSIS.Drop)

## Deaktivieren von SSIS
<a name="SSIS.Disable"></a>

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.

### Konsole
<a name="SSIS.Disable.Console"></a>

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-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

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

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

1. 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.

1. Wählen Sie **Delete (Löschen)**.

### CLI
<a name="SSIS.Disable.CLI"></a>

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.  
**Example**  

  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
<a name="SSIS.Drop"></a>

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.

# Unterstützung für SQL Server Reporting Services in Amazon RDS für SQL Server
<a name="Appendix.SQLServer.Options.SSRS"></a>

Microsoft SQL Server Reporting Services (SSRS) ist eine serverbasierte Anwendung, die für die Berichterstellung und -verteilung verwendet wird. Es ist Teil einer Suite von SQL Server-Services, die auch SQL Server Analysis Services (SSAS) und SQL Server Integration Services (SSIS) enthält. SSRS ist ein Service, der auf SQL Server basiert. Sie können damit Daten aus verschiedenen Datenquellen sammeln und auf eine Weise präsentieren, die leicht verständlich und für die Analyse bereit ist.

Amazon RDS für SQL Server unterstützt das Ausführen von SSRS direkt auf RDS-DB-Instances. Sie können SSRS auf vorhandenen oder neuen DB-Instances verwenden.

RDS unterstützt SSRS für SQL Server Standard und Enterprise Edition in den folgenden Versionen:
+ SQL Server 2022, alle 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.5820.21.v1 und höher

**Contents**
+ [

## Einschränkungen und Empfehlungen
](#SSRS.Limitations)
+ [

# Aktivieren von SSAS
](SSRS.Enabling.md)
  + [

## Erstellen einer Optionsgruppe für SSRS
](SSRS.Enabling.md#SSRS.OptionGroup)
  + [

## Hinzufügen der SSRS-Option zu Ihrer Optionsgruppe
](SSRS.Enabling.md#SSRS.Add)
  + [

## Zuordnen Ihrer Optionsgruppe zu Ihrer DB-Instance
](SSRS.Enabling.md#SSRS.Apply)
  + [

## Zulassen des eingehenden Zugriffs auf Ihre VPC-Sicherheitsgruppe
](SSRS.Enabling.md#SSRS.Inbound)
+ [

## Berichtsserverdatenbanken
](#SSRS.DBs)
+ [

## SSRS-Protokolldateien
](#SSRS.Logs)
+ [

# Zugriff auf das SSRS-Webportal
](SSRS.Access.md)
  + [

## Verwendung von SSL auf RDS
](SSRS.Access.md#SSRS.Access.SSL)
  + [

## Gewähren des Zugriffs für Domänenbenutzer
](SSRS.Access.md#SSRS.Access.Grant)
  + [

## Zugriff auf das Webportal
](SSRS.Access.md#SSRS.Access)
+ [

# Bereitstellen von Berichten und Konfigurieren von Berichtsdatenquellen
](SSRS.DeployConfig.md)
  + [

## Bereitstellen von Berichten zu SSRS
](SSRS.DeployConfig.md#SSRS.Deploy)
  + [

## Konfigurieren der Berichtsdatenquelle
](SSRS.DeployConfig.md#SSRS.ConfigureDataSource)
+ [

# Verwenden von SSRS E-Mail zum Senden von Berichten
](SSRS.Email.md)
+ [

# Widerrufen von Berechtigungen auf Systemebene
](SSRS.Access.Revoke.md)
+ [

# Überwachung des Status einer Aufgabe
](SSRS.Monitor.md)
+ [

# Deaktivieren und Löschen von SSRS-Datenbanken
](SSRS.DisableDelete.md)
  + [

## Deaktivieren von SSAS
](SSRS.DisableDelete.md#SSRS.Disable)
  + [

## Löschen der SSRS-Datenbanken
](SSRS.DisableDelete.md#SSRS.Drop)

## Einschränkungen und Empfehlungen
<a name="SSRS.Limitations"></a>

Die folgenden Einschränkungen und Empfehlungen gelten für die Ausführung von SSRS auf RDS für SQL Server:
+ Sie können SSRS nicht für DB-Instances verwenden, die Lesereplikate haben.
+ Instances müssen selbstverwaltetes Active Directory oder AWS Directory Service for Microsoft Active Directory für die SSRS-Webportal- und Webserverauthentifizierung verwenden. Weitere Informationen finden Sie unter [Arbeiten mit Active Directory mit RDS für SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md). 
+ Sie können die Datenbanken des Berichtsservers, die mit der Option SSIS erstellt wurden, nicht sichern.
+ Das Importieren und Wiederherstellen von Berichtsserverdatenbanken aus anderen SSRS-Instances wird nicht unterstützt. Weitere Informationen finden Sie unter [Berichtsserverdatenbanken](#SSRS.DBs).
+ Sie können SSRS nicht so konfigurieren, dass der standardmäßige SSL-Port (443) überwacht wird. Die zulässigen Werte sind 1150–49511, außer 1234, 1434, 3260, 3343, 3389 und 47001.
+ Abonnements per Microsoft Windows-Dateifreigabe werden nicht unterstützt.
+ Die Verwendung von Reporting Services Configuration Manager wird nicht unterstützt.
+ Das Erstellen und Ändern von Rollen wird nicht unterstützt.
+ Das Ändern der Eigenschaften des Berichtsservers wird nicht unterstützt.
+ Systemadministrator- und Systembenutzerrollen werden nicht erteilt.
+ Sie können Rollenzuweisungen auf Systemebene nicht über das Webportal bearbeiten.

# Aktivieren von SSAS
<a name="SSRS.Enabling"></a>

Verwenden Sie den folgenden Prozess, um SSAS für Ihre DB-Instance zu aktivieren:

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

1. Fügen Sie die Option `SSRS` zur Optionsgruppe hinzu.

1. Ordnen Sie die Optionsgruppe der DB-Instance zu.

1. Erlauben Sie eingehenden Zugriff auf die VPC-Sicherheitsgruppe (Virtual Private Cloud) für den SSRS-Listener-Port.

## Erstellen einer Optionsgruppe für SSRS
<a name="SSRS.OptionGroup"></a>

Um mit SSRS zu arbeiten, erstellen Sie eine Optionsgruppe, die der SQL Server-Engine und der Version der DB-Instance entspricht, die Sie verwenden möchten. Verwenden Sie dazu das AWS-Managementkonsole oder das AWS CLI. 

**Anmerkung**  
Sie können auch eine vorhandene Optionsgruppe verwenden, wenn es sich um die korrekte SQL Server-Engine und -Version handelt.

### Konsole
<a name="SSRS.OptionGroup.Console"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2017 erstellt.

**So erstellen Sie die Optionsgruppe**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. Führen Sie im Bereich **Create option group (Optionsgruppe erstellen)** Folgendes aus:

   1. Geben Sie **unter Name** einen Namen für die Optionsgruppe ein, der innerhalb Ihrer Optionsgruppe einzigartig ist AWS-Konto, z. **ssrs-se-2017** B. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

   1. Geben Sie unter **Beschreibung** eine kurze Beschreibung der Optionsgruppe ein, z. B. **SSRS option group for SQL Server SE 2017**. Die Beschreibung ist nur zur Information.

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

   1. Wählen Sie im Feld **Major Engine Version (Engine-Hauptversion)** **14.00** aus.

1. Wählen Sie **Erstellen** aus.

### CLI
<a name="SSRS.OptionGroup.CLI"></a>

Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2017 erstellt.

**So erstellen Sie die Optionsgruppe**
+ Führen Sie einen der folgenden Befehle aus.

**Example**  
Für Linux, macOS oder Unix:  

```
aws rds create-option-group \
    --option-group-name ssrs-se-2017 \
    --engine-name sqlserver-se \
    --major-engine-version 14.00 \
    --option-group-description "SSRS option group for SQL Server SE 2017"
```
Für Windows:  

```
aws rds create-option-group ^
    --option-group-name ssrs-se-2017 ^
    --engine-name sqlserver-se ^
    --major-engine-version 14.00 ^
    --option-group-description "SSRS option group for SQL Server SE 2017"
```

## Hinzufügen der SSRS-Option zu Ihrer Optionsgruppe
<a name="SSRS.Add"></a>

Verwenden Sie als Nächstes das AWS-Managementkonsole oder, AWS CLI um die `SSRS` Option zu Ihrer Optionsgruppe hinzuzufügen.

### Konsole
<a name="SSRS.Add.CON"></a>

**So fügen Sie die SSRS-Option hinzu**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die soeben erstellte Optionsgruppe aus, und wählen Sie dann **Option hinzufügen**.

1. Wählen Sie unter **Optionsdetails** für **Optionsname** die Option **SSRS** aus.

1. Führen Sie unter **Optionseinstellungen** die folgenden Schritte aus:

   1. Geben Sie den Port ein, den der SSRS-Service überwachen soll. Der Standardwert ist 8443. Eine Liste der zulässigen Werte finden Sie unter [Einschränkungen und Empfehlungen](Appendix.SQLServer.Options.SSRS.md#SSRS.Limitations).

   1. Geben Sie einen Wert für **Max. Speicher** ein.

      **Max. Speicher** gibt den oberen Schwellenwert an, über dem keine neuen Speicherzuordnungsanforderungen für Berichtsserveranwendungen erteilt werden. Die Zahl ist ein Prozentsatz des Gesamtspeichers der DB-Instance. Die zulässigen Werte sind 10–80.

   1. Wählen Sie für **Security groups (Sicherheitsgruppen)** die VPC-Sicherheitsgruppe aus, die der Option zugeordnet werden soll. Verwenden Sie dieselbe Sicherheitsgruppe, die Ihrer DB-Instance zugeordnet ist.

1. Um SSRS Email zum Senden von Berichten zu verwenden, wählen Sie die **E-Mail-Zustellungsoptionen konfigurieren**-Kontrollkästchen unter **E-Mail-Versand in Berichtsdiensten** und gehen Sie wie folgt vor:

   1. Geben Sie unter **Absender-E-Mail-Adresse** die E-Mail-Adresse ein, die im Feld **Absender** der von SSRS Email gesendeten Nachrichten verwendet werden soll.

      Geben Sie ein Benutzerkonto an, das die die die Berechtigung für das Senden von E-Mails vom SMTP-Server besitzt.

   1. Für **SMTP-Server**, geben Sie den zu verwendenden SMTP-Server oder Gateway an.

      Dabei kann es sich um eine IP-Adresse, den NetBIOS-Namen eines Computers im Intranet Ihres Unternehmens oder um einen vollqualifizierten Domänennamen handeln.

   1. Für **SMTP-Anschluss**, geben Sie den Port ein, der für die Verbindung mit dem Mailserver verwendet werden soll. Der Standardwert ist 25.

   1. So verwenden Sie die Authentifizierung:

      1. Aktivieren Sie das Kontrollkästchen **Authentifizierung verwenden**.

      1. Geben Sie für **Secret Amazon Resource Name (ARN)** den AWS Secrets Manager ARN für die Benutzeranmeldedaten ein.

         Verwenden Sie das folgende Format:

         **arn:aws:secretsmanager:*Region*:*AccountId*:secret:*SecretName*-*6RandomCharacters***

         Beispiel:

         **arn:aws:secretsmanager:*us-west-2*:*123456789012*:secret:*MySecret-a1b2c3***

         Weitere Informationen über „creating the secret“ finden Sie in [Verwenden von SSRS E-Mail zum Senden von Berichten](SSRS.Email.md).

   1. Aktivieren Sie das Kontrollkästchen **Secure Sockets Layer (SSL) verwenden**, um E-Mail-Nachrichten mit SSL zu verschlüsseln.

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

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

### CLI
<a name="SSRS.Add.CLI"></a>

**So fügen Sie die SSRS-Option hinzu**

1. Erstellen Sie eine JSON-Datei, z. B. `ssrs-option.json`.

   1. Setzen Sie die folgenden erforderlichen Parameter:
      + `OptionGroupName` – Der Name der Optionsgruppe, die Sie zuvor erstellt oder ausgewählt haben (`ssrs-se-2017` im folgenden Beispiel).
      + `Port` – Der Port, den der SSRS-Service überwachen soll. Der Standardwert ist 8443. Eine Liste der zulässigen Werte finden Sie unter [Einschränkungen und Empfehlungen](Appendix.SQLServer.Options.SSRS.md#SSRS.Limitations).
      + `VpcSecurityGroupMemberships` – VPC-Sicherheitsgruppenmitgliedschaften für Ihre RDS-DB-Instance.
      + `MAX_MEMORY` – Der obere Schwellenwert, über dem keine neuen Speicherzuordnungsanforderungen für Berichtsserveranwendungen erteilt werden. Die Zahl ist ein Prozentsatz des Gesamtspeichers der DB-Instance. Die zulässigen Werte sind 10–80.

   1. (Optional) Legen Sie die folgenden Parameter für die Verwendung von SSRS-E-Mail fest:
      + `SMTP_ENABLE_EMAIL` – Einstellung auf `true`, um SSRS-E-Mail zu verwenden. Der Standardwert ist `false`.
      + `SMTP_SENDER_EMAIL_ADDRESS` - Die E-Mail-Adresse, die im **Von**-feld der von SSRS Email gesendeten Nachrichten verwendet werden soll. Geben Sie ein Benutzerkonto an, das die die die Berechtigung für das Senden von E-Mails vom SMTP-Server besitzt.
      + `SMTP_SERVER` – Der zu verwendende SMTP-Server oder Gateway. Dabei kann es sich um eine IP-Adresse, den NetBIOS-Namen eines Computers im Intranet Ihres Unternehmens oder um einen vollqualifizierten Domänennamen handeln.
      + `SMTP_PORT` – Der Port, der für die Verbindung mit dem Mailserver verwendet werden soll. Der Standardwert ist 25.
      + `SMTP_USE_SSL` – Einstellung auf `true`, um E-Mail-Nachrichten mit SSL zu verschlüsseln. Der Standardwert ist `true`.
      + `SMTP_EMAIL_CREDENTIALS_SECRET_ARN` – Der Secrets Manager Manager-ARN, der die Anmeldeinformationen des Benutzers enthält. Verwenden Sie das folgende Format:

        **arn:aws:secretsmanager:*Region*:*AccountId*:secret:*SecretName*-*6RandomCharacters***

        Weitere Informationen über „creating the secret“ finden Sie in [Verwenden von SSRS E-Mail zum Senden von Berichten](SSRS.Email.md).
      + `SMTP_USE_ANONYMOUS_AUTHENTICATION` – Einstellung auf `true` und nicht einschließen, `SMTP_EMAIL_CREDENTIALS_SECRET_ARN` wenn Sie keine Authentifizierung verwenden möchten.

        Der Standardwert ist `false`, wenn `SMTP_ENABLE_EMAIL` ist `true`.

   Das folgende Beispiel enthält die SSRS E-Mail-Parameter unter Verwendung des geheimen ARN.

   ```
   {
   "OptionGroupName": "ssrs-se-2017",
   "OptionsToInclude": [
   	{
   	"OptionName": "SSRS",
   	"Port": 8443,
   	"VpcSecurityGroupMemberships": ["sg-0abcdef123"],
   	"OptionSettings": [
               {"Name": "MAX_MEMORY","Value": "60"},
               {"Name": "SMTP_ENABLE_EMAIL","Value": "true"}
               {"Name": "SMTP_SENDER_EMAIL_ADDRESS","Value": "nobody@example.com"},
               {"Name": "SMTP_SERVER","Value": "email-smtp.us-west-2.amazonaws.com"},
               {"Name": "SMTP_PORT","Value": "25"},
               {"Name": "SMTP_USE_SSL","Value": "true"},
               {"Name": "SMTP_EMAIL_CREDENTIALS_SECRET_ARN","Value": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret-a1b2c3"}
               ]
   	}],
   "ApplyImmediately": true
   }
   ```

1. Fügen Sie die Option `SSRS` zur Optionsgruppe hinzu.  
**Example**  

   Für Linux, macOS oder Unix:

   ```
   aws rds add-option-to-option-group \
       --cli-input-json file://ssrs-option.json \
       --apply-immediately
   ```

   Für Windows:

   ```
   aws rds add-option-to-option-group ^
       --cli-input-json file://ssrs-option.json ^
       --apply-immediately
   ```

## Zuordnen Ihrer Optionsgruppe zu Ihrer DB-Instance
<a name="SSRS.Apply"></a>

Verwenden Sie das AWS-Managementkonsole oder AWS CLI , um Ihre Optionsgruppe mit Ihrer DB-Instance zu verknüpfen.

Wenn Sie eine vorhandene DB-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 [Arbeiten mit Active Directory mit RDS für SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md).

### Konsole
<a name="SSRS.Apply.Console"></a>

Sie können Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zuordnen:
+ Ordnen Sie bei einer neuen DB-Instance die Optionsgruppe beim Starten der Instance zu. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Ändern Sie für eine vorhandene DB-Instance die Instance und ordnen Sie die neue Optionsgruppe zu. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

### CLI
<a name="SSRS.Apply.CLI"></a>

Sie können Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zuordnen.

**So erstellen Sie eine DB-Instance, die Ihre Optionsgruppe verwendet**
+ Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-db-instance \
      --db-instance-identifier myssrsinstance \
      --db-instance-class db.m5.2xlarge \
      --engine sqlserver-se \
      --engine-version 14.00.3223.3.v1 \
      --allocated-storage 100 \
      --manage-master-user-password  \
      --master-username admin \
      --storage-type gp2 \
      --license-model li \
      --domain-iam-role-name my-directory-iam-role \
      --domain my-domain-id \
      --option-group-name ssrs-se-2017
  ```

  Für Windows:

  ```
  aws rds create-db-instance ^
      --db-instance-identifier myssrsinstance ^
      --db-instance-class db.m5.2xlarge ^
      --engine sqlserver-se ^
      --engine-version 14.00.3223.3.v1 ^
      --allocated-storage 100 ^
      --manage-master-user-password ^
      --master-username admin ^
      --storage-type gp2 ^
      --license-model li ^
      --domain-iam-role-name my-directory-iam-role ^
      --domain my-domain-id ^
      --option-group-name ssrs-se-2017
  ```

**So ändern Sie eine DB-Instance für die Verwendung Ihrer Optionsgruppe**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds modify-db-instance \
      --db-instance-identifier myssrsinstance \
      --option-group-name ssrs-se-2017 \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier myssrsinstance ^
      --option-group-name ssrs-se-2017 ^
      --apply-immediately
  ```

## Zulassen des eingehenden Zugriffs auf Ihre VPC-Sicherheitsgruppe
<a name="SSRS.Inbound"></a>

Um eingehenden Zugriff auf die VPC-Sicherheitsgruppe zu gewähren, die Ihrer DB-Instance zugeordnet ist, erstellen Sie eine eingehende Regel für den angegebenen SSRS-Listener-Port. Weitere Informationen zum Einrichten von Sicherheitsgruppen finden Sie unter [Ermöglichen des Zugriffs auf Ihre DB-Instance in der VPC durch Erstellen einer Sicherheitsgruppe](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup).

## Berichtsserverdatenbanken
<a name="SSRS.DBs"></a>

Wenn Ihre DB-Instance mit der Option SSRS verknüpft ist, werden zwei neue Datenbanken für Ihre DB-Instance erstellt:
+ `rdsadmin_ReportServer`
+ `rdsadmin_ReportServerTempDB`

Diese Datenbanken fungieren als ReportServer- und ReportServerTempDB-Datenbanken. SSRS speichert seine Daten in der ReportServer-Datenbank und speichert die Daten in der ReportServerTempDB-Datenbank zwischen. Weitere Informationen finden Sie unter [Berichtsserverdatenbank](https://learn.microsoft.com/en-us/sql/reporting-services/report-server/report-server-database-ssrs-native-mode?view=sql-server-ver15) in der Microsoft-Dokumentation.

RDS besitzt und verwaltet diese Datenbanken, sodass Datenbankoperationen auf ihnen wie ALTER und DROP nicht zulässig sind. Der Zugriff auf die Datenbank `rdsadmin_ReportServerTempDB` ist nicht zulässig. Sie können jedoch Lesevorgänge in der Datenbank `rdsadmin_ReportServer` ausführen.

## SSRS-Protokolldateien
<a name="SSRS.Logs"></a>

Sie können SSRS-Protokolldateien auflisten, anzeigen und herunterladen. *SSRS-Protokolldateien folgen der Namenskonvention „ReportServerService\$1timestamp*.log“. Diese Berichtsserver-Protokolle befinden sich im Verzeichnis `D:\rdsdbdata\Log\SSRS`. (Das Verzeichnis `D:\rdsdbdata\Log` ist auch das übergeordnete Verzeichnis für Fehlerprotokolle und SQL-Server-Agent-Protokolle.) Weitere Informationen finden Sie unter [Anzeigen und Auflisten von Datenbank-Protokolldateien](USER_LogAccess.Procedural.Viewing.md).

Für vorhandene SSRS-Instances ist möglicherweise ein Neustart des SSRS-Service erforderlich, um auf Berichtsserverprotokolle zuzugreifen. Sie können den Service neu starten, indem Sie die `SSRS`-Option aktualisieren.

Weitere Informationen finden Sie unter [Arbeiten mit Microsoft-SQL-Server-Protokollen](Appendix.SQLServer.CommonDBATasks.Logs.md).

# Zugriff auf das SSRS-Webportal
<a name="SSRS.Access"></a>

Gehen Sie wie folgt vor, um auf das SSRS-Webportal zuzugreifen:

1. Aktivieren Sie Secure Sockets Layer (SSL).

1. Gewähren Sie Domänenbenutzern Zugriff.

1. Greifen Sie mit einem Browser und den Anmeldeinformationen des Domänenbenutzers auf das Webportal zu.

## Verwendung von SSL auf RDS
<a name="SSRS.Access.SSL"></a>

SSRS verwendet das HTTPS-SSL-Protokoll für seine Verbindungen. Um mit diesem Protokoll arbeiten zu können, importieren Sie ein SSL-Zertifikat in das Microsoft Windows-Betriebssystem auf Ihrem Client-Computer.

Weitere Informationen zu SSL-Zertifikaten finden Sie unter [](UsingWithRDS.SSL.md). Weitere Informationen über die Verwendung von SSL mit SQL Server finden Sie unter [Verwenden von SSL mit einer Microsoft SQL Server-DB-Instance](SQLServer.Concepts.General.SSL.Using.md).

## Gewähren des Zugriffs für Domänenbenutzer
<a name="SSRS.Access.Grant"></a>

Bei einer neuen SSRS-Aktivierung gibt es keine Rollenzuweisungen in SSRS. Um einem Domänenbenutzer oder einer Benutzergruppe Zugriff auf das Webportal zu gewähren, stellt RDS eine gespeicherte Prozedur bereit.

**So erteilen Sie einem Domänenbenutzer Zugriff auf das Webportal**
+ Verwenden Sie die folgende gespeicherte Prozedur.

  ```
  exec msdb.dbo.rds_msbi_task
  @task_type='SSRS_GRANT_PORTAL_PERMISSION',
  @ssrs_group_or_username=N'AD_domain\user';
  ```

Dem Domänenbenutzer oder der Benutzergruppe wird die `RDS_SSRS_ROLE`-Systemrolle erteilt. Diese Rolle hat die folgenden Aufgaben auf Systemebene erteilt:
+ Führen Sie Berichte aus
+ Verwalten von Aufträgen
+ Verwalten von freigegebenen Zeitplänen
+ Anzeigen von freigegebenen Zeitplänen

Die Rolle `Content Manager` auf Elementebene im Stammordner wird ebenfalls gewährt.

## Zugriff auf das Webportal
<a name="SSRS.Access"></a>

Nachdem die `SSRS_GRANT_PORTAL_PERMISSION`-Aufgabe erfolgreich abgeschlossen wurde, haben Sie Zugriff auf das Portal über einen Webbrowser. Die Webportal-URL hat das folgende Format.

```
https://rds_endpoint:port/Reports
```

In diesem Format gilt Folgendes:
+ *`rds_endpoint`* – Der Endpunkt für die RDS-DB-Instance, die Sie mit SSRS verwenden.

  Sie finden den Endpunkt auf der Registerkarte **Konnektivität und Sicherheit** für Ihre DB-Instance. Weitere Informationen finden Sie unter [Herstellen einer Verbindung mit Ihrer DB-Instance von Microsoft SQL Server](USER_ConnectToMicrosoftSQLServerInstance.md).
+ `port` – Der Listener-Port für SSRS, den Sie in der `SSRS`-Option festgelegt haben.

**So greifen Sie auf das Webportal zu**

1. Geben Sie die Webportal-URL in Ihrem Browser ein.

   ```
   https://myssrsinstance.cg034itsfake.us-east-1.rds.amazonaws.com:8443/Reports
   ```

1. Melden Sie sich mit den Anmeldeinformationen für einen Domänenbenutzer an, dem Sie Zugriff mit der `SSRS_GRANT_PORTAL_PERMISSION`-Aufgabe gewährt haben.

# Bereitstellen von Berichten und Konfigurieren von Berichtsdatenquellen
<a name="SSRS.DeployConfig"></a>

Verwenden Sie die folgenden Verfahren, um Berichte für SSRS bereitzustellen und die Berichtsdatenquellen zu konfigurieren:

**Topics**
+ [

## Bereitstellen von Berichten zu SSRS
](#SSRS.Deploy)
+ [

## Konfigurieren der Berichtsdatenquelle
](#SSRS.ConfigureDataSource)

## Bereitstellen von Berichten zu SSRS
<a name="SSRS.Deploy"></a>

Nachdem Sie Zugriff auf das Webportal haben, können Sie Berichte für das Webportal bereitstellen. Sie können das Upload-Tool im Webportal verwenden, um Berichte hochzuladen oder direkt über [SQL Server Data Tools (SSDT)](https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt) bereitzustellen. Stellen Sie bei der Bereitstellung von SSDT Folgendes sicher:
+ Der Benutzer, der SSDT gestartet hat, hat Zugriff auf das SSRS-Webportal.
+ Der `TargetServerURL`-Wert in den SSRS-Projekteigenschaften ist auf den HTTPS-Endpunkt der RDS-DB-Instance mit dem Suffix `ReportServer` gesetzt, zum Beispiel:

  ```
  https://myssrsinstance.cg034itsfake.us-east-1.rds.amazonaws.com:8443/ReportServer
  ```

## Konfigurieren der Berichtsdatenquelle
<a name="SSRS.ConfigureDataSource"></a>

Nachdem Sie einen Bericht für SSRS bereitgestellt haben, sollten Sie die Berichtsdatenquelle konfigurieren. Achten Sie beim Konfigurieren der Berichtsdatenquelle auf Folgendes:
+ Für DB-Instances von RDS für SQL Server, die AWS Directory Service for Microsoft Active Directory angeschlossen sind, verwenden Sie den vollqualifizierten Domain-Namen (FQDN) als Datenquellennamen der Verbindungszeichenfolge. Ein Beispiel ist `myssrsinstance.corp-ad.example.com`, wobei `myssrsinstance` der Name der DB-Instance und `corp-ad.example.com` der vollqualifizierte Domänenname ist. 
+ Für DB-Instances von RDS für SQL Server, die mit dem selbstverwalteten Active Directory verbunden sind, verwenden Sie `.` oder `LocalHost` als Datenquellenname der Verbindungszeichenfolge.

# Verwenden von SSRS E-Mail zum Senden von Berichten
<a name="SSRS.Email"></a>

SSRS enthält die SSRS E-Mail-Erweiterung, mit der Sie Berichte an Benutzer senden können.

Um SSRS Email zu konfigurieren, verwenden Sie die `SSRS`-Optionseinstellungen. Weitere Informationen finden Sie unter [Hinzufügen der SSRS-Option zu Ihrer Optionsgruppe](SSRS.Enabling.md#SSRS.Add).

Nachdem Sie SSRS Email konfiguriert haben, können Sie Berichte auf dem Berichtsserver abonnieren. Weitere Informationen finden Sie unter [E-Mail-Versand in Reporting Services](https://docs.microsoft.com/en-us/sql/reporting-services/subscriptions/e-mail-delivery-in-reporting-services) in der Microsoft-Dokumentation.

Die Integration mit AWS Secrets Manager ist erforderlich, damit SSRS-E-Mail auf RDS funktioniert. Um mit Secrets Manager zu integrieren, erstellen Sie ein Secret.

**Anmerkung**  
Wenn Sie das Geheimnis später ändern, müssen Sie auch die `SSRS`-Option in der Optionsgruppe aktualisieren.

**Ein Secret für SSRS-E-Mail erstellen**

1. Befolgen Sie die Schritte unter [Erstellen eines Geheimnisses](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html) im *AWS Secrets ManagerBenutzerhandbuch*.

   1. Wählen Sie für **Select secret type (Secret-Typ auswählen)** die Option **Other type of secrets (Anderer Secret-Typ)** aus.

   1. Für **Schlüssel-Wert-Paare** geben Sie Folgendes ein:
      + **SMTP\$1USERNAME** – Geben Sie einen Benutzer ein, der berechtigt ist, E-Mails vom SMTP-Server zu senden.
      + **SMTP\$1PASSWORD** – Geben Sie ein Passwort für den SMTP-Benutzer ein.

   1. Verwenden Sie für den **Verschlüsselungscode** nicht die Standardeinstellung AWS KMS key. Verwenden Sie Ihren eigenen vorhandenen Schlüssel oder erstellen Sie einen neuen.

      Die KMS-Schlüsselrichtlinie muss die `kms:Decrypt`-Aktion zulassen, zum Beispiel:

      ```
      {
          "Sid": "Allow use of the key",
          "Effect": "Allow",
          "Principal": {
              "Service": [
                  "rds.amazonaws.com"
              ]
          },
          "Action": [
              "kms:Decrypt"
          ],
          "Resource": "*"
      }
      ```

1. Führen Sie die Schritte unter [Anhängen einer Berechtigungsrichtlinie an ein Geheimnis](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-policies.html) im *AWS Secrets ManagerBenutzerhandbuch aus*. Die Berechtigungsrichtlinie gibt die `secretsmanager:GetSecretValue`-Aktion an den `rds.amazonaws.com` Service Principal weiter.

   Wir empfehlen Ihnen, die `aws:sourceAccount` und `aws:sourceArn` Bedingungen in der Police zu verwenden, um das Problem des *verwirrten Vertreters* zu vermeiden. Verwenden Sie Ihren AWS-Konto for `aws:sourceAccount` und den ARN für die Optionsgruppe`aws:sourceArn`. Weitere Informationen finden Sie unter [Vermeidung des dienstübergreifenden Confused-Deputy-Problems](cross-service-confused-deputy-prevention.md).

   Das folgende Beispiel zeigt eine Berechtigungsrichtlinie.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement" : [ {
       "Effect" : "Allow",
       "Principal" : {
         "Service" : "rds.amazonaws.com"
       },
       "Action" : "secretsmanager:GetSecretValue",
       "Resource" : "*",
       "Condition" : {
         "StringEquals" : {
           "aws:sourceAccount" : "123456789012"
         },
         "ArnLike" : {
           "aws:sourceArn" : "arn:aws:rds:us-west-2:123456789012:og:ssrs-se-2017"
         }
       }
     } ]
   }
   ```

------

   Weitere Beispiele finden Sie unter [Beispiele für Berechtigungsrichtlinien für AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples.html) im *AWS Secrets ManagerBenutzerhandbuch*.

# Widerrufen von Berechtigungen auf Systemebene
<a name="SSRS.Access.Revoke"></a>

Die `RDS_SSRS_ROLE`-Systemrolle verfügt nicht über ausreichende Berechtigungen zum Löschen von Rollenzuweisungen auf Systemebene. Verwenden Sie zum Entfernen eines Benutzers oder einer Benutzergruppe aus `RDS_SSRS_ROLE` dieselbe gespeicherte Prozedur, die Sie zum Erteilen der Rolle verwendet haben, verwenden Sie jedoch den `SSRS_REVOKE_PORTAL_PERMISSION`-Aufgabentyp.

**So widerrufen Sie den Zugriff eines Domänenbenutzers für das Webportal**
+ Verwenden Sie die folgende gespeicherte Prozedur.

  ```
  exec msdb.dbo.rds_msbi_task
  @task_type='SSRS_REVOKE_PORTAL_PERMISSION',
  @ssrs_group_or_username=N'AD_domain\user';
  ```

Dadurch wird der Benutzer aus der `RDS_SSRS_ROLE`-Systemrolle gelöscht. Außerdem wird der Benutzer aus der `Content Manager`-Rolle auf Elementebene gelöscht, wenn der Benutzer sie hat.

# Überwachung des Status einer Aufgabe
<a name="SSRS.Monitor"></a>

Rufen Sie die `rds_fn_task_status`-Funktion auf, um den Status Ihrer Erteilungs- oder Widerrufsaufgabe zu verfolgen. Dazu sind zwei Parameter erforderlich. Der erste Parameter sollte immer `NULL` sein, da er sich nicht auf SSRS 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` | Für SSRS können Aufgaben die folgenden Aufgabentypen haben: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/SSRS.Monitor.html)  | 
| `database_name` | Gilt nicht für SSRS-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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/SSRS.Monitor.html)  | 
| `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 SSRS-Aufgaben.  | 
| `overwrite_S3_backup_file` | Gilt nicht für SSRS-Aufgaben. | 
| `KMS_master_key_arn` |  Gilt nicht für SSRS-Aufgaben.  | 
| `filepath` |  Gilt nicht für SSRS-Aufgaben.  | 
| `overwrite_file` |  Gilt nicht für SSRS-Aufgaben.  | 
| `task_metadata` | Metadaten, die der SSRS-Aufgabe zugeordnet sind. | 

# Deaktivieren und Löschen von SSRS-Datenbanken
<a name="SSRS.DisableDelete"></a>

Gehen Sie wie folgt vor, um SSRS zu deaktivieren und SSRS-Datenbanken zu löschen:

**Topics**
+ [

## Deaktivieren von SSAS
](#SSRS.Disable)
+ [

## Löschen der SSRS-Datenbanken
](#SSRS.Drop)

## Deaktivieren von SSAS
<a name="SSRS.Disable"></a>

Um SSAS zu deaktivieren, entfernen Sie die Option `SSRS` aus der Optionsgruppe. Wenn Sie die Option entfernen, werden die SSRS-Datenbanken nicht gelöscht. Weitere Informationen finden Sie unter [Löschen der SSRS-Datenbanken](#SSRS.Drop).

Sie können SSRS wieder einschalten, indem Sie die `SSRS` Option wieder hinzufügen. Wenn Sie auch die SSRS-Datenbanken gelöscht haben, werden durch das Lesen der Option auf derselben DB-Instance neue Berichtsserver-Datenbanken erstellt.

### Konsole
<a name="SSRS.Disable.Console"></a>

**So entfernen Sie die SSRS-Option aus der Optionsgruppe**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der Option `SSRS` (`ssrs-se-2017` in den vorherigen Beispielen).

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

1. Wählen Sie unter **Löschoptionen** für **Zu löschende Optionen** die Option **SSRS** aus.

1. 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.

1. Wählen Sie **Delete (Löschen)**.

### CLI
<a name="SSRS.Disable.CLI"></a>

**So entfernen Sie die SSRS-Option aus der Optionsgruppe**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds remove-option-from-option-group \
      --option-group-name ssrs-se-2017 \
      --options SSRS \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds remove-option-from-option-group ^
      --option-group-name ssrs-se-2017 ^
      --options SSRS ^
      --apply-immediately
  ```

## Löschen der SSRS-Datenbanken
<a name="SSRS.Drop"></a>

Wenn Sie die `SSRS`-Option entfernen, werden die Berichtsserverdatenbanken nicht gelöscht. Verwenden Sie die folgende gespeicherte Prozedur, um sie zu löschen. 

Um die Berichtsserverdatenbanken zu löschen, müssen Sie zuerst die `SSRS`-Option entfernen.

**So löschen Sie die SSRS-Datenbanken**
+ Verwenden Sie die folgende gespeicherte Prozedur.

  ```
  exec msdb.dbo.rds_drop_ssrs_databases
  ```

# Unterstützung für Microsoft Distributed Transaction Coordinator in RDS für SQL Server
<a name="Appendix.SQLServer.Options.MSDTC"></a>

Eine *verteilte Transaktion* ist eine Datenbanktransaktion, an der zwei oder mehr Netzwerkhosts beteiligt sind. RDS für SQL Server unterstützt verteilte Transaktionen zwischen Hosts, wobei ein einzelner Host einer der folgenden sein kann:
+ RDS für SQL Server-DB-Instance
+ Lokaler SQL Server-Host
+ Amazon EC2-Host mit installiertem SQL Server
+ Alle anderen EC2-Host- oder RDS-DB-Instances mit einer Datenbank-Engine, die verteilte Transaktionen unterstützt

In RDS, beginnend mit SQL Server 2012 (Version 11.00.5058.0.v1 und höher), unterstützen alle Editionen von RDS für SQL Server verteilte Transaktionen. Die Unterstützung wird mithilfe von Microsoft Distributed Transaction Coordinator (MSDTC) bereitgestellt. Ausführliche Informationen zu MSDTC finden Sie unter [Distributed Transaction Coordinator](https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms684146(v=vs.85)) in der Microsoft-Dokumentation.

**Contents**
+ [

## Einschränkungen
](#Appendix.SQLServer.Options.MSDTC.Limitations)
+ [

# Aktivieren von MSDTC
](Appendix.SQLServer.Options.MSDTC.Enabling.md)
  + [

## Erstellen der Optionsgruppe für MSDTC
](Appendix.SQLServer.Options.MSDTC.Enabling.md#Appendix.SQLServer.Options.MSDTC.OptionGroup)
  + [

## Hinzufügen der MSDTC-Option zur Optionsgruppe
](Appendix.SQLServer.Options.MSDTC.Enabling.md#Appendix.SQLServer.Options.MSDTC.Add)
  + [

## Erstellen der Parametergruppe für MSDTC
](Appendix.SQLServer.Options.MSDTC.Enabling.md#MSDTC.CreateParamGroup)
  + [

## Ändern des Parameters für MSDTC
](Appendix.SQLServer.Options.MSDTC.Enabling.md#ModifyParam.MSDTC)
  + [

## Zuordnen der Options- und Parametergruppe zur DB-Instance
](Appendix.SQLServer.Options.MSDTC.Enabling.md#MSDTC.Apply)
  + [

## Ändern der MSDTC-Option
](Appendix.SQLServer.Options.MSDTC.Enabling.md#Appendix.SQLServer.Options.MSDTC.Modify)
+ [

## Verwenden von Transaktionen
](#Appendix.SQLServer.Options.MSDTC.Using)
  + [

### Verwenden verteilter Transaktionen
](#Appendix.SQLServer.Options.MSDTC.UsingXA)
  + [

### XA-Transaktionen verwenden
](#MSDTC.XA)
  + [

### Verwenden der Transaktionsnachverfolgung
](#MSDTC.Tracing)
+ [

# Deaktivieren von MSDTC
](Appendix.SQLServer.Options.MSDTC.Disable.md)
+ [

# Problembehandlung bei MSDTC für RDS für SQL Server
](Appendix.SQLServer.Options.MSDTC.Troubleshooting.md)

## Einschränkungen
<a name="Appendix.SQLServer.Options.MSDTC.Limitations"></a>

Die folgenden Einschränkungen gelten für die Verwendung von MSDTC auf RDS für SQL Server:
+ MSDTC wird auf Instances, welche die SQL Server-Datenbankspiegelung verwenden, nicht unterstützt. Weitere Informationen finden Sie unter [Transaktionen - Verfügbarkeitsgruppen und Datenbankspiegelung](https://docs.microsoft.com/en-us/sql/database-engine/availability-groups/windows/transactions-always-on-availability-and-database-mirroring?view=sql-server-ver15#non-support-for-distributed-transactions).
+ Der Parameter `in-doubt xact resolution` muss auf 1 oder 2 gesetzt werden. Weitere Informationen finden Sie unter [Ändern des Parameters für MSDTC](Appendix.SQLServer.Options.MSDTC.Enabling.md#ModifyParam.MSDTC).
+ MSDTC erfordert, dass alle Hosts, die an verteilten Transaktionen beteiligt sind, mit ihren Hostnamen auflösbar sind. RDS verwaltet diese Funktionalität automatisch für domänengebundene Instances. Achten Sie jedoch bei eigenständigen Instances darauf, den DNS-Server manuell zu konfigurieren.
+ XA-Transaktionen (Java Database Connectivity) werden für SQL Server 2017, Version 14.00.3223.3 und höher, und SQL Server 2019, unterstützt.
+ Verteilte Transaktionen, die von Client-Dynamic-Link-Bibliotheken (DLLs) auf RDS-Instances abhängen, werden nicht unterstützt.
+ Die Verwendung benutzerdefinierter dynamischer XA-Verknüpfungsbibliotheken wird nicht unterstützt.

# Aktivieren von MSDTC
<a name="Appendix.SQLServer.Options.MSDTC.Enabling"></a>

Verwenden Sie den folgenden Prozess, um MSDTC für Ihre DB-Instance zu aktivieren:

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

1. Fügen Sie die Option `MSDTC` zur Optionsgruppe hinzu.

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

1. Ändern Sie die Parametergruppe, um den Parameter `in-doubt xact resolution` auf 1 oder 2 festzulegen.

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

## Erstellen der Optionsgruppe für MSDTC
<a name="Appendix.SQLServer.Options.MSDTC.OptionGroup"></a>

Verwenden Sie die AWS-Managementkonsole oder AWS CLI, um eine Optionsgruppe zu erstellen, die der SQL Server-Engine und der Version Ihrer DB-Instance entspricht.

**Anmerkung**  
Sie können auch eine vorhandene Optionsgruppe verwenden, wenn es sich um die korrekte SQL Server-Engine und -Version handelt.

### Konsole
<a name="OptionGroup.MSDTC.Console"></a>

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-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. Führen Sie im Bereich **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. **msdtc-se-2016**. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

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

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

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

1. Wählen Sie **Erstellen** aus.

### CLI
<a name="OptionGroup.MSDTC.CLI"></a>

Im folgenden Beispiel wird eine Optionsgruppe für SQL Server Standard Edition 2016 erstellt.

**So erstellen Sie die Optionsgruppe**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

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

  Für Windows:

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

## Hinzufügen der MSDTC-Option zur Optionsgruppe
<a name="Appendix.SQLServer.Options.MSDTC.Add"></a>

Verwenden Sie als Nächstes die AWS-Managementkonsole oder AWS CLI, um die Option `MSDTC` zur Optionsgruppe hinzuzufügen.

Die folgenden Optionseinstellungen sind erforderlich:
+ **Port** – Der Port, den Sie für den Zugriff auf MSDTC verwenden. Zulässige Werte sind 1150–49151 mit Ausnahme von 1234, 1434, 3260, 3343, 3389 und 47001. Der Standardwert ist 5000.

  Stellen Sie sicher, dass der zu verwendende Port in den Firewall-Regeln aktiviert ist. Stellen Sie außerdem sicher, dass dieser Port bei Bedarf in den ein- und ausgehenden Regeln für die Sicherheitsgruppe aktiviert ist, die Ihrer DB-Instance zugeordnet ist. Weitere Informationen finden Sie unter [Verbindung zur Amazon-RDS-DB-Instance kann nicht hergestellt werden](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting). 
+ **Sicherheitsgruppen** – Die VPC-Sicherheitsgruppenmitgliedschaften für Ihre RDS-DB-Instance.
+ **Authentifizierungstyp** – Der Authentifizierungsmodus zwischen Hosts. Die folgenden Authentifizierungstypen werden unterstützt:
  + Gegenseitig – Die RDS-Instances werden gegenseitig mittels integrierter Authentifizierung authentifiziert. Wenn diese Option ausgewählt ist, müssen alle Instances, die dieser Optionsgruppe zugeordnet sind, einer Domäne zugeordnet sein.
  + Keine – Es wird keine Authentifizierung zwischen Hosts durchgeführt. Es wird nicht empfohlen, diesen Modus in Produktionsumgebungen zu verwenden.
+ **Transaktionsprotokollgröße** – Die Größe des MSDTC-Transaktionsprotokolls. Zulässige Werte sind 4–1024 MB. Die Standardgröße beträgt 4 MB.

Die folgenden Optionseinstellungen sind optional:
+ **Eingehende Verbindungen aktivieren** – Gibt an, ob eingehende MSDTC-Verbindungen zu Instances zugelassen werden sollen, die dieser Optionsgruppe zugeordnet sind.
+ **Ausgehende Verbindungen aktivieren** – Gibt an, ob ausgehende MSDTC-Verbindungen von Instances zugelassen werden sollen, die dieser Optionsgruppe zugeordnet sind.
+ **XA aktivieren** – Gibt an, ob XA-Transaktionen zugelassen werden sollen. Weitere Informationen zum XA-Protokoll finden Sie unter [XA-Spezifikation](https://publications.opengroup.org/c193).
+ **SNA LU aktivieren** – Gibt an, ob das SNA LU-Protokoll für verteilte Transaktionen verwendet werden kann. Weitere Informationen zur Unterstützung des SNA LU-Protokolls finden Sie unter [Verwalten von IBM CICS LU 6.2-Transaktionen](https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms685136(v=vs.85)) in der Microsoft-Dokumentation.

### Konsole
<a name="Options.MSDTC.Add.Console"></a>

**So fügen Sie die MSDTC-Option hinzu**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe aus, die Sie gerade erstellt haben.

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

1. Wählen Sie unter **Optionsdetails** für **Optionsname** die Option **MSDTC** aus.

1. Unter **Optionseinstellungen**:

   1. Geben Sie unter **Port** die Portnummer für den Zugriff auf MSDTC ein. Der Standardwert ist **5000**.

   1. Wählen Sie für **Security groups (Sicherheitsgruppen)** die VPC-Sicherheitsgruppe aus, die der Option zugeordnet werden soll.

   1. Wählen Sie für **Authentifizierungstyp** die Option **Gegenseitig** oder **Keine** aus.

   1. Geben Sie für **Transaktionsprotokollgröße** einen Wert von 4–1024 ein. Der Standardwert ist **4**.

1. Führen Sie unter **Zusätzliche Konfiguration** die folgenden Schritte aus:

   1. Wählen Sie für **Verbindungen** nach Bedarf die Option **Eingehende Verbindungen aktivieren** und **Ausgehende Verbindungen aktivieren** aus.

   1. Wählen Sie für **Zulässige Protokolle** nach Bedarf die Option **XA aktivieren** und **SNA LU aktivieren** aus.

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

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

   Um diese Option hinzuzufügen, ist kein Neustart erforderlich.

### CLI
<a name="Options.MSDTC.Add.CLI"></a>

**So fügen Sie die MSDTC-Option hinzu**

1. Erstellen Sie beispielsweise `msdtc-option.json`, eine JSON-Datei mit den folgenden erforderlichen Parametern.

   ```
   {
   "OptionGroupName":"msdtc-se-2016",
   "OptionsToInclude": [
   	{
   	"OptionName":"MSDTC",
   	"Port":5000,
   	"VpcSecurityGroupMemberships":["sg-0abcdef123"],
   	"OptionSettings":[{"Name":"AUTHENTICATION","Value":"MUTUAL"},{"Name":"TRANSACTION_LOG_SIZE","Value":"4"}]
   	}],
   "ApplyImmediately": true
   }
   ```

1. Fügen Sie die Option `MSDTC` zur Optionsgruppe hinzu.  
**Example**  

   Für Linux, macOS oder Unix:

   ```
   aws rds add-option-to-option-group \
       --cli-input-json file://msdtc-option.json \
       --apply-immediately
   ```

   Für Windows:

   ```
   aws rds add-option-to-option-group ^
       --cli-input-json file://msdtc-option.json ^
       --apply-immediately
   ```

   Es ist kein Neustart erforderlich.

## Erstellen der Parametergruppe für MSDTC
<a name="MSDTC.CreateParamGroup"></a>

Erstellen oder ändern Sie eine Parametergruppe für den `in-doubt xact resolution`-Parameter, der der SQL Server-Edition und der Version Ihrer DB-Instance entspricht.

### Konsole
<a name="CreateParamGroup.MSDTC.Console"></a>

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

**So erstellen Sie die Parametergruppe**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. 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.

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

   1. Geben Sie für **Beschreibung** den Text **in-doubt xact resolution** ein.

1. Wählen Sie **Erstellen** aus.

### CLI
<a name="CreateParamGroup.MSDTC.CLI"></a>

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

**So erstellen Sie die Parametergruppe**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-db-parameter-group \
      --db-parameter-group-name msdtc-sqlserver-se-13 \
      --db-parameter-group-family "sqlserver-se-13.0" \
      --description "in-doubt xact resolution"
  ```

  Für Windows:

  ```
  aws rds create-db-parameter-group ^
      --db-parameter-group-name msdtc-sqlserver-se-13 ^
      --db-parameter-group-family "sqlserver-se-13.0" ^
      --description "in-doubt xact resolution"
  ```

## Ändern des Parameters für MSDTC
<a name="ModifyParam.MSDTC"></a>

Ändern Sie den `in-doubt xact resolution`-Parameter in der Parametergruppe, die der SQL Server-Edition und der Version Ihrer DB-Instance entspricht.

Legen Sie für MSDTC den `in-doubt xact resolution`-Parameter auf einen der folgenden Parameter fest:
+ `1` – `Presume commit`. Alle unsicheren MSDTC-Transaktionen werden als übermittelt angesehen.
+ `2` – `Presume abort`. Alle unsicheren MSDTC-Transaktionen werden als gestoppt angesehen.

Weitere Informationen finden Sie unter [Lösung für unklare Transaktion (Serverkonfigurationsoption)](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/in-doubt-xact-resolution-server-configuration-option) in der Microsoft-Dokumentation.

### Konsole
<a name="ModifyParam.MSDTC.Console"></a>

Im folgenden Beispiel 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-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Parametergruppe aus, z. B. **msdtc-sqlserver-se-13**.

1. Filtern Sie unter **Parameter** die Parameterliste nach **xact**.

1. Wählen Sie **in-doubt xact resolution** aus.

1. Wählen Sie **Parameter bearbeiten** aus.

1. Geben Sie **1** oder **2** ein.

1. Wählen Sie **Änderungen speichern ** aus.

### CLI
<a name="ModifyParam.MSDTC.CLI"></a>

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

**So ändern Sie die Parametergruppe**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds modify-db-parameter-group \
      --db-parameter-group-name msdtc-sqlserver-se-13 \
      --parameters "ParameterName='in-doubt xact resolution',ParameterValue=1,ApplyMethod=immediate"
  ```

  Für Windows:

  ```
  aws rds modify-db-parameter-group ^
      --db-parameter-group-name msdtc-sqlserver-se-13 ^
      --parameters "ParameterName='in-doubt xact resolution',ParameterValue=1,ApplyMethod=immediate"
  ```

## Zuordnen der Options- und Parametergruppe zur DB-Instance
<a name="MSDTC.Apply"></a>

Sie können die AWS-Managementkonsole oder AWS CLI verwenden, um die MSDTC-Optionsgruppe und die Parametergruppe der DB-Instance zuzuordnen.

### Konsole
<a name="MSDTC.Apply.Console"></a>

Sie können die MSDTC-Optionsgruppe und die Parametergruppe einer neuen oder vorhandenen DB-Instance zuordnen.
+ Ordnen Sie sie bei einer neuen DB-Instance zu, wenn Sie die Instance starten. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Ordnen Sie sie für eine vorhandene DB-Instance zu, indem Sie die Instance ändern. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).
**Anmerkung**  
Wenn Sie eine vorhandene Instance verwenden, die einer Domäne beigetreten ist, 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, die einer Domäne beigetreten ist, geben Sie eine vorhandene Active Directory-Domäne und IAM-Rolle an. Weitere Informationen finden Sie unter [Arbeiten mit AWS Managed Active Directory mit RDS für SQL Server](USER_SQLServerWinAuth.md).

### CLI
<a name="MSDTC.Apply.CLI"></a>

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

**Anmerkung**  
Wenn Sie eine vorhandene Instance verwenden, die einer Domäne beigetreten ist, muss ihr bereits eine Active Directory-Domäne und eine IAM-Rolle zugeordnet sein. Wenn Sie eine neue Instance erstellen, die einer Domäne beigetreten ist, geben Sie eine vorhandene Active Directory-Domäne und IAM-Rolle an. Weitere Informationen finden Sie unter [Arbeiten mit AWS Managed Active Directory mit RDS für SQL Server](USER_SQLServerWinAuth.md).

**So erstellen Sie eine DB-Instance mit der MSDTC-Optionsgruppe und der Parametergruppe**
+ Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.  
**Example**  

  Für Linux, macOS oder Unix:

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

  Für Windows:

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

**So ändern Sie eine DB-Instance und ordnen die MSDTC-Optionsgruppe und die Parametergruppe zu**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds modify-db-instance \
      --db-instance-identifier mydbinstance \
      --option-group-name msdtc-se-2016 \
      --db-parameter-group-name msdtc-sqlserver-se-13 \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier mydbinstance ^
      --option-group-name msdtc-se-2016 ^
      --db-parameter-group-name msdtc-sqlserver-se-13 ^
      --apply-immediately
  ```

## Ändern der MSDTC-Option
<a name="Appendix.SQLServer.Options.MSDTC.Modify"></a>

Nachdem Sie die Option `MSDTC` aktiviert haben, können Sie ihre Einstellungen ändern. Weitere Informationen über das Ändern von Optionseinstellungen finden Sie unter [Ändern einer Optionseinstellung](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption).

**Anmerkung**  
Bei einigen Änderungen an den MSDTC-Optionseinstellungen muss der MSDTC-Service neu gestartet werden. Diese Anforderung kann sich auf die Ausführung verteilter Transaktionen auswirken.

## Verwenden von Transaktionen
<a name="Appendix.SQLServer.Options.MSDTC.Using"></a>

### Verwenden verteilter Transaktionen
<a name="Appendix.SQLServer.Options.MSDTC.UsingXA"></a>

In Amazon RDS für SQL Server führen Sie verteilte Transaktionen auf die gleiche Weise aus wie verteilte Transaktionen, die lokal ausgeführt werden:
+ Mithilfe von heraufstufbaren `System.Transactions`-Transaktionen im .NET Framework, die verteilte Transaktionen optimieren, indem ihre Erstellung so lange verschoben wird, bis sie benötigt werden.

  In diesem Fall erfolgt die Heraufstufung automatisch und erfordert keine Intervention. Wenn nur ein Ressourcenmanager innerhalb der Transaktion vorhanden ist, wird keine Heraufstufung durchgeführt. Weitere Informationen zu impliziten Transaktionsbereichen finden Sie unter [Implementieren einer impliziten Transaktion mit Transaktionsbereich](https://docs.microsoft.com/en-us/dotnet/framework/data/transactions/implementing-an-implicit-transaction-using-transaction-scope) in der Microsoft-Dokumentation.

  Heraufstufbare Transaktionen werden mit folgenden .NET-Implementierungen unterstützt: 
  + Beginnend mit ADO.NET 2.0 unterstützt `System.Data.SqlClient` heraufstufbare Transaktionen mit SQL Server. Weitere Informationen finden Sie unter [System.Transactions-Integration in SQL Server](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/system-transactions-integration-with-sql-server) in der Microsoft-Dokumentation.
  + ODP.NET unterstützt `System.Transactions`. Für die erste Verbindung, die im `TransactionsScope`-Bereich zu Oracle Database 11g Release 1 (Version 11.1) und höher geöffnet wurde, wird eine lokale Transaktion erstellt. Wenn eine zweite Verbindung geöffnet wird, wird diese Transaktion automatisch zu einer verteilten Transaktion heraufgestuft. Weitere Informationen zur Unterstützung verteilter Transaktionen in ODP.NET finden Sie unter [Microsoft Distributed Transaction Coordinator-Integration](https://docs.oracle.com/en/database/oracle/oracle-data-access-components/18.3/ntmts/using-mts-with-oracledb.html) in der Microsoft-Dokumentation.
+ Verwenden der `BEGIN DISTRIBUTED TRANSACTION`-Anweisung. Weitere Informationen finden Sie unter [BEGIN DISTRIBUTED TRANSACTION (Transact-SQL)](https://docs.microsoft.com/en-us/sql/t-sql/language-elements/begin-distributed-transaction-transact-sql) in der Microsoft-Dokumentation.

### XA-Transaktionen verwenden
<a name="MSDTC.XA"></a>

Ab RDS für SQL Server 2017, Version 14.00.3223.3, können Sie verteilte Transaktionen mit JDBC steuern. Wenn Sie die`Enable XA`Optionseinstellung auf`true`im`MSDTC`aktiviert, aktiviert RDS automatisch JDBC-Transaktionen und gewährt die`SqlJDBCXAUser`-Rolle auf die`guest`-Benutzer. Dies ermöglicht die Ausführung verteilter Transaktionen über JDBC. Weitere Informationen, einschließlich eines Code-Beispiels, finden Sie unter unter.[XA-Transaktionen](https://docs.microsoft.com/en-us/sql/connect/jdbc/understanding-xa-transactions)in der Microsoft-Dokumentation.

### Verwenden der Transaktionsnachverfolgung
<a name="MSDTC.Tracing"></a>

RDS unterstützt die Steuerung von MSDTC-Transaktionsnachverfolgungen und deren Herunterladen aus der RDS-DB-Instance zur Fehlerbehebung. Sie können Transaktionsnachverfolgungssitzungen steuern, indem Sie die folgende gespeicherte RDS-Prozedur ausführen.

```
exec msdb.dbo.rds_msdtc_transaction_tracing 'trace_action',
[@traceall='0|1'],
[@traceaborted='0|1'],
[@tracelong='0|1'];
```

Der folgende Parameter ist erforderlich:
+ `trace_action` – Die Nachverfolgungsaktion. Sie kann `START`, `STOP` oder `STATUS` sein.

Die folgenden Parameter sind optional:
+ `@traceall` – Setzen Sie auf 1, um alle verteilten Transaktionen nachzuverfolgen. Der Standardwert ist 0.
+ `@traceaborted` – Setzen Sie auf 1, um abgebrochene verteilte Transaktionen nachzuverfolgen. Der Standardwert ist 0.
+ `@tracelong` – Setzen Sie auf 1, um zeitintensive verteilte Transaktionen zu verfolgen. Der Standardwert ist 0.

**Example mit START-Nachverfolgungsaktion**  
Um eine neue Transaktionsnachverfolgungssitzung zu starten, führen Sie die folgende Beispielanweisung aus.  

```
exec msdb.dbo.rds_msdtc_transaction_tracing 'START',
@traceall='0',
@traceaborted='1',
@tracelong='1';
```
Es kann nur eine Transaktionsnachverfolgungssitzung gleichzeitig aktiv sein. Wenn ein neuer `START`-Befehl für die Nachverfolgungssitzung ausgegeben wird, während eine Nachverfolgungssitzung aktiv ist, wird ein Fehler zurückgegeben, und die aktive Nachverfolgungssitzung bleibt unverändert.

**Example mit STOP-Nachverfolgungsaktion**  
Um eine Transaktionsnachverfolgungssitzung zu beenden, führen Sie die folgende Anweisung aus.  

```
exec msdb.dbo.rds_msdtc_transaction_tracing 'STOP'
```
Diese Anweisung stoppt die aktive Transaktionsnachverfolgungssitzung und speichert die Transaktionsnachverfolgungsdaten im Protokollverzeichnis der RDS-DB-Instance. Die erste Zeile der Ausgabe enthält das Gesamtergebnis und die folgenden Zeilen zeigen Details der Operation an.  
Im Folgenden finden Sie ein Beispiel für einen erfolgreichen Sitzungsstopp der Nachverfolgung.  

```
OK: Trace session has been successfully stopped.
Setting log file to: D:\rdsdbdata\MSDTC\Trace\dtctrace.log
Examining D:\rdsdbdata\MSDTC\Trace\msdtctr.mof for message formats,  8 found.
Searching for TMF files on path: (null)
Logfile D:\rdsdbdata\MSDTC\Trace\dtctrace.log:
 OS version    10.0.14393  (Currently running on 6.2.9200)
 Start Time    <timestamp>
 End Time      <timestamp>
 Timezone is   @tzres.dll,-932 (Bias is 0mins)
 BufferSize            16384 B
 Maximum File Size     10 MB
 Buffers  Written      Not set (Logger may not have been stopped).
 Logger Mode Settings (11000002) ( circular paged
 ProcessorCount         1 
Processing completed   Buffers: 1, Events: 3, EventsLost: 0 :: Format Errors: 0, Unknowns: 3
Event traces dumped to d:\rdsdbdata\Log\msdtc_<timestamp>.log
```
Mit den detaillierten Informationen können Sie den Namen der generierten Protokolldatei abfragen. Weitere Informationen zum Herunterladen von Protokolldateien aus der RDS-DB-Instance finden Sie unter [Überwachen von Amazon RDS-Protokolldateien](USER_LogAccess.md).  
Die Nachverfolgungssitzungsprotokolle verbleiben 35 Tage lang auf der Instance. Ältere Nachverfolgungssitzungsprotokolle werden automatisch gelöscht.

**Example mit STATUS-Nachverfolgungsaktion**  
Um den Status einer Transaktionsnachverfolgungssitzung nachzuverfolgen, führen Sie die folgende Anweisung aus.  

```
exec msdb.dbo.rds_msdtc_transaction_tracing 'STATUS'
```
Diese Anweisung gibt Folgendes als separate Zeilen der Ergebnismenge aus.  

```
OK
SessionStatus: <Started|Stopped>
TraceAll: <True|False>
TraceAborted: <True|False>
TraceLongLived: <True|False>
```
Die erste Zeile gibt das Gesamtergebnis der Operation an: `OK` oder gegebenenfalls `ERROR` mit Details. Die folgenden Zeilen zeigen Details zum Status der Nachverfolgungssitzung an:   
+ `SessionStatus` kann einer der folgenden sein:
  + `Started`, wenn eine Nachverfolgungssitzung ausgeführt wird.
  + `Stopped`, wenn keine Nachverfolgungssitzung ausgeführt wird.
+ Die Protokollierungssitzungs-Flags können `True` oder `False` abhängig davon sein, wie sie im `START`-Befehl festgelegt wurden.

# Deaktivieren von MSDTC
<a name="Appendix.SQLServer.Options.MSDTC.Disable"></a>

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

## Konsole
<a name="Options.MSDTC.Disable.Console"></a>

**So entfernen Sie die MSDTC-Option aus der Optionsgruppe**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der Option `MSDTC` (`msdtc-se-2016` in den vorherigen Beispielen).

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

1. Wählen Sie unter **Löschoptionen** für **Zu löschende Optionen** die Option **MSDTC** aus.

1. 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.

1. Wählen Sie **Delete (Löschen)**.

## CLI
<a name="Options.MSDTC.Disable.CLI"></a>

**So entfernen Sie die MSDTC-Option aus der Optionsgruppe**
+ Verwenden Sie einen der folgenden Befehle.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds remove-option-from-option-group \
      --option-group-name msdtc-se-2016 \
      --options MSDTC \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds remove-option-from-option-group ^
      --option-group-name msdtc-se-2016 ^
      --options MSDTC ^
      --apply-immediately
  ```

# Problembehandlung bei MSDTC für RDS für SQL Server
<a name="Appendix.SQLServer.Options.MSDTC.Troubleshooting"></a>

In einigen Fällen haben Sie möglicherweise Probleme beim Herstellen einer Verbindung zwischen MSDTC, der auf einem Client-Computer ausgeführt wird, und dem MSDTC-Dienst, der auf einer RDS für SQL Server-DB-Instance ausgeführt wird. Wenn ja, stellen Sie Folgendes sicher:
+ Die eingehenden Regeln für die Sicherheitsgruppe, die der DB-Instance zugeordnet ist, sind korrekt konfiguriert. Weitere Informationen finden Sie unter [Verbindung zur Amazon-RDS-DB-Instance kann nicht hergestellt werden](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).
+ Der Client-Computer ist korrekt konfiguriert.
+ Die MSDTC-Firewall-Regeln auf Ihrem Client-Computer sind aktiviert.

**So konfigurieren Sie den Client-Computer**

1. Öffnen Sie **Komponentendienste**.

   Oder wählen Sie im **Server-Manager** die Option **Tools** und dann **Komponentendienste** aus.

1. Erweitern Sie **Komponentendienste**, erweitern Sie **Computer**, erweitern Sie **Arbeitsplatz** und erweitern Sie dann **Distributed Transaction Coordinator**.

1. Öffnen Sie das Kontextmenü (Rechtsklick) für **Lokaler DTC** und wählen Sie **Eigenschaften** aus.

1. Wählen Sie die Registerkarte **Sicherheit** aus.

1. Wählen Sie alle der folgenden Optionen aus:
   + **Netzwerk-DTC-Zugriff**
   + **Eingehende zulassen**
   + **Ausgehende zulassen**

1. Stellen Sie sicher, dass der richtige Authentifizierungsmodus gewählt ist:
   + **Gegenseitige Authentifizierung erforderlich** – Der Client-Computer ist mit derselben Domäne verbunden wie andere Knoten, die an einer verteilten Transaktion beteiligt sind, oder es ist eine Vertrauensstellung zwischen Domänen konfiguriert.
   + **Keine Authentifizierung erforderlich** – Alle anderen Fälle.

1. Wählen Sie **OK** aus, um Ihre Änderungen zu speichern.

1. Wenn Sie aufgefordert werden, den Dienst neu zu starten, wählen Sie **Ja**.

**So aktivieren Sie MSDTC-Firewall-Regeln**

1. Öffnen Sie die Windows-Firewall und wählen Sie dann **Erweiterte Einstellungen** aus.

   Oder wählen Sie im **Server-Manager** die Option **Tools** und dann **Windows-Firewall mit erweiterter Sicherheit** aus.
**Anmerkung**  
Abhängig von Ihrem Betriebssystem wird die Windows-Firewall möglicherweise als Windows Defender Firewall bezeichnet.

1. Wählen Sie im linken Bereich die Option **Eingehende Regeln** aus.

1. Aktivieren Sie die folgenden Firewall-Regeln, wenn sie noch nicht aktiviert sind:
   + **Distributed Transaction Coordinator (RPC)**
   + **Distributed Transaction Coordinator (RPC)-EPMAP**
   + **Distributed Transaction Coordinator (TCP-In)**

1. Schließen Sie die Windows-Firewall.

# Microsoft SQL Server-Ressourcenkontrolle mit RDS für SQL Server
<a name="Appendix.SQLServer.Options.ResourceGovernor"></a>

Resource Governor ist eine Funktion der SQL Server Enterprise Edition, mit der Sie Ihre Instance-Ressourcen präzise steuern können. Es ermöglicht Ihnen, spezifische Grenzwerte für die Nutzung von CPU, Arbeitsspeicher und physischen I/O Ressourcen durch Workloads festzulegen. Mit Resource Governor können Sie:
+ Vermeiden Sie die Monopolisierung von Ressourcen in Umgebungen mit mehreren Mandanten, indem Sie festlegen, wie verschiedene Workloads Instanzressourcen gemeinsam nutzen
+ Sorgen Sie für vorhersehbare Leistung, indem Sie spezifische Ressourcenlimits und Prioritäten für verschiedene Benutzer und Anwendungen festlegen

Sie können Resource Governor entweder auf einer vorhandenen oder einer neuen RDS for SQL Server-DB-Instance aktivieren.

Resource Governor verwendet drei grundlegende Konzepte:
+ **Ressourcenpool** — Ein Container, der die physischen Ressourcen Ihrer Instance (CPU, Arbeitsspeicher und I/O) verwaltet. Sie erhalten zwei integrierte Pools (intern und Standard) und können zusätzliche benutzerdefinierte Pools erstellen.
+ **Workload-Gruppe** — Ein Container für Datenbanksitzungen mit ähnlichen Eigenschaften. Jede Workload-Gruppe gehört zu einem Ressourcenpool. Sie erhalten zwei integrierte Workload-Gruppen (intern und Standard) und können zusätzliche benutzerdefinierte Workload-Gruppen erstellen.
+ **Klassifizierung** — Der Prozess, der anhand des Benutzernamens, Anwendungsnamens, Datenbanknamens oder Hostnamens bestimmt, welche Workload-Gruppe eingehende Sitzungen verarbeitet.

Weitere Informationen zur Resource Governor-Funktionalität in SQL Server finden Sie unter [Resource Governor](https://learn.microsoft.com/en-us/sql/relational-databases/resource-governor/resource-governor?view=sql-server-ver16) in der Microsoft-Dokumentation.

**Contents**
+ [

## Unterstützte Versionen und Regionen
](#ResourceGovernor.SupportedVersions)
+ [

## Einschränkungen und Empfehlungen
](#ResourceGovernor.Limitations)
+ [

# Aktivieren der Microsoft SQL Server-Ressourcenkontrolle für Ihre RDS for SQL Server-Instanz
](ResourceGovernor.Enabling.md)
  + [

## Erstellen der Optionsgruppe für `RESOURCE_GOVERNOR`
](ResourceGovernor.Enabling.md#ResourceGovernor.OptionGroup)
  + [

## Hinzufügen der `RESOURCE_GOVERNOR`-Option zur Optionsgruppe
](ResourceGovernor.Enabling.md#ResourceGovernor.Add)
  + [

## Zuordnen der Optionsgruppe zu Ihrer DB-Instance
](ResourceGovernor.Enabling.md#ResourceGovernor.Apply)
+ [

# Verwenden von Microsoft SQL Server Resource Governor für Ihre RDS for SQL Server-Instanz
](ResourceGovernor.Using.md)
  + [

## Ressourcenpool verwalten
](ResourceGovernor.Using.md#ResourceGovernor.ManageResourcePool)
    + [

### Ressourcenpool erstellen
](ResourceGovernor.Using.md#ResourceGovernor.CreateResourcePool)
    + [

### Ressourcenpool ändern
](ResourceGovernor.Using.md#ResourceGovernor.AlterResourcePool)
    + [

### Ressourcenpool löschen
](ResourceGovernor.Using.md#ResourceGovernor.DropResourcePool)
  + [

## Arbeitslastgruppen verwalten
](ResourceGovernor.Using.md#ResourceGovernor.ManageWorkloadGroups)
    + [

### Workload-Gruppe erstellen
](ResourceGovernor.Using.md#ResourceGovernor.CreateWorkloadGroup)
    + [

### Workload-Gruppe ändern
](ResourceGovernor.Using.md#ResourceGovernor.AlterWorkloadGroup)
    + [

### Workload-Gruppe löschen
](ResourceGovernor.Using.md#ResourceGovernor.DropWorkloadGroup)
  + [

## Klassifikatorfunktion erstellen und registrieren
](ResourceGovernor.Using.md#ResourceGovernor.ClassifierFunction)
  + [

## Klassifizierer-Funktion löschen
](ResourceGovernor.Using.md#ResourceGovernor.DropClassifier)
  + [

## Klassifikatorfunktion deregistrieren
](ResourceGovernor.Using.md#ResourceGovernor.DeregisterClassifier)
  + [

## Statistik zurücksetzen
](ResourceGovernor.Using.md#ResourceGovernor.ResetStats)
  + [

## Änderungen der Konfiguration von Resource Governor
](ResourceGovernor.Using.md#ResourceGovernor.ConfigChanges)
  + [

## TempDB an einen Ressourcenpool binden
](ResourceGovernor.Using.md#ResourceGovernor.BindTempDB)
  + [

## TempDB von einem Ressourcenpool trennen
](ResourceGovernor.Using.md#ResourceGovernor.UnbindTempDB)
  + [

## Steuerung der Ressourcen für Cleanup
](ResourceGovernor.Using.md#ResourceGovernor.Cleanup)
+ [

## Überlegungen zur Multi-AZ-Bereitstellung
](#ResourceGovernor.Considerations)
+ [

## Überlegungen zu Read Replicas
](#ResourceGovernor.ReadReplica)
+ [

# Überwachen Sie die Microsoft SQL Server-Ressourcenkontrolle mithilfe von Systemansichten für Ihre RDS for SQL Server-Instanz
](ResourceGovernor.Monitoring.md)
  + [

## Laufzeitstatistiken für den Ressourcenpool
](ResourceGovernor.Monitoring.md#ResourceGovernor.ResourcePoolStats)
+ [

# Deaktivieren der Microsoft SQL Server-Ressourcenkontrolle für Ihre RDS for SQL Server-Instanz
](ResourceGovernor.Disabling.md)
+ [

# Bewährte Methoden für die Konfiguration von Resource Governor auf RDS für SQL Server
](ResourceGovernor.BestPractices.md)

## Unterstützte Versionen und Regionen
<a name="ResourceGovernor.SupportedVersions"></a>

Amazon RDS unterstützt Resource Governor für die folgenden SQL Server-Versionen und -Editionen in allen Ländern AWS-Regionen , in denen RDS für SQL Server verfügbar ist:
+ SQL Server 2022 Developer- und Enterprise-Editionen
+ SQL Server 2019 Enterprise Edition
+ SQL Server 2017 Enterprise Edition
+ SQL Server 2016 Enterprise Edition

## Einschränkungen und Empfehlungen
<a name="ResourceGovernor.Limitations"></a>

Die folgenden Einschränkungen und Empfehlungen gelten für Resource Governor:
+ Editions- und Serviceeinschränkungen:
  + Nur in der SQL Server Enterprise Edition verfügbar.
  + Die Ressourcenverwaltung ist auf die SQL Server Database Engine beschränkt. Die Ressourcenkontrolle für Analysis Services, Integration Services und Reporting Services wird nicht unterstützt.
+ Einschränkungen bei der Konfiguration:
  + Muss für alle Konfigurationen gespeicherte Amazon RDS-Prozeduren verwenden.
  + Systemeigene DDL-Anweisungen und SQL Server Management Studio-GUI-Konfigurationen werden nicht unterstützt.
+ Parameter des Ressourcenpools:
  + Poolnamen, die mit beginnen, werden `rds_` nicht unterstützt.
  + Interne und standardmäßige Änderungen am Ressourcenpool sind nicht zulässig.
  + Für die benutzerdefinierten Ressourcenpools werden die folgenden Ressourcenpoolparameter nicht unterstützt:
    + `MIN_MEMORY_PERCENT`
    + `MIN_CPU_PERCENT`
    + `MIN_IOPS_PER_VOLUME`
    + `AFFINITY`
+ Parameter der Workload-Gruppe:
  + Workload-Gruppennamen, die mit beginnen, werden `rds_` nicht unterstützt.
  + Eine Änderung der internen Workload-Gruppe ist nicht zulässig.
  + Für die Standard-Workload-Gruppe:
    + Nur der `REQUEST_MAX_MEMORY_GRANT_PERCENT` Parameter kann geändert werden.
    + Für die Standard-Workload-Gruppe `REQUEST_MAX_MEMORY_GRANT_PERCENT` muss der Wert zwischen 1 und 70 liegen.
    + Alle anderen Parameter sind gesperrt und können nicht geändert werden.
  + Benutzerdefinierte Workload-Gruppen ermöglichen die Änderung aller Parameter.
+ Einschränkungen der Classifier-Funktion:
  + Die Classifier-Funktion leitet Verbindungen zu benutzerdefinierten Workload-Gruppen auf der Grundlage bestimmter Kriterien (Benutzername, Datenbank, Host oder Anwendungsname) weiter.
  + Unterstützt bis zu zwei benutzerdefinierte Workload-Gruppen mit ihren jeweiligen Routing-Bedingungen.
  + Kombiniert Kriterien mit `AND` Bedingungen innerhalb jeder Gruppe.
  + Erfordert mindestens ein Routingkriterium pro Workload-Gruppe.
  + Nur die oben aufgeführten Klassifizierungsmethoden werden unterstützt.
  + Der Funktionsname muss mit beginnen`rg_classifier_`.
  + Standardgruppenzuweisung, wenn keine Bedingungen erfüllt sind.

# Aktivieren der Microsoft SQL Server-Ressourcenkontrolle für Ihre RDS for SQL Server-Instanz
<a name="ResourceGovernor.Enabling"></a>

Aktivieren Sie Resource Governor, indem Sie die `RESOURCE_GOVERNOR` Option zu Ihrer RDS for SQL Server-DB-Instance hinzufügen. Verwenden Sie den folgenden Prozess:

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

1. Fügen Sie die Option `RESOURCE_GOVERNOR` zur Optionsgruppe hinzu.

1. Ordnen Sie die Optionsgruppe der DB-Instance zu.

**Anmerkung**  
Für die Aktivierung von Resource Governor über eine Optionsgruppe ist kein Neustart erforderlich.

## Erstellen der Optionsgruppe für `RESOURCE_GOVERNOR`
<a name="ResourceGovernor.OptionGroup"></a>

Um Resource Governor zu aktivieren, erstellen Sie eine Optionsgruppe oder ändern Sie eine Optionsgruppe, die der SQL Server-Edition und Version der DB-Instance entspricht, die Sie verwenden möchten. Um dieses Verfahren abzuschließen, verwenden Sie den AWS-Managementkonsole oder den AWS CLI.

### Konsole
<a name="ResourceGovernor.OptionGroup.Console"></a>

Verwenden Sie das folgende Verfahren, um eine Optionsgruppe für SQL Server Enterprise Edition 2022 zu erstellen.

**So erstellen Sie die Optionsgruppe**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

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

1. 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 eindeutig ist, z. **resource-governor-ee-2022** B. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten.

   1. Geben Sie unter **Beschreibung** eine kurze Beschreibung der Optionsgruppe ein, z. B. **RESOURCE\$1GOVERNOR option group for SQL Server EE 2022**. Die Beschreibung ist nur zur Information.

   1. Wählen Sie für **Engine** die Option **sqlserver-ee** aus.

   1. **Wählen Sie **16.00 für Major-Engine-Version** aus.**

1. Wählen Sie **Erstellen** aus.

### CLI
<a name="ResourceGovernor.OptionGroup.CLI"></a>

Mit dem folgenden Verfahren wird eine Optionsgruppe für SQL Server Enterprise Edition 2022 erstellt.

**So erstellen Sie die Optionsgruppe**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-option-group \
      --option-group-name resource-governor-ee-2022 \
      --engine-name sqlserver-ee \
      --major-engine-version 16.00 \
      --option-group-description "RESOURCE_GOVERNOR option group for SQL Server EE 2022"
  ```

  Für Windows:

  ```
  aws rds create-option-group ^
      --option-group-name resource-governor-ee-2022 ^
      --engine-name sqlserver-ee ^
      --major-engine-version 16.00 ^
      --option-group-description "RESOURCE_GOVERNOR option group for SQL Server EE 2022"
  ```

## Hinzufügen der `RESOURCE_GOVERNOR`-Option zur Optionsgruppe
<a name="ResourceGovernor.Add"></a>

Verwenden Sie als Nächstes das AWS-Managementkonsole oder, AWS CLI um die `RESOURCE_GOVERNOR` Option zu Ihrer Optionsgruppe hinzuzufügen.

### Konsole
<a name="ResourceGovernor.Add.Console"></a>

**Um die Option RESOURCE\$1GOVERNOR hinzuzufügen**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe, die Sie gerade erstellt haben, in diesem Beispiel **resource-governor-ee-2022**.

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

1. **Wählen Sie unter **Optionsdetails** **RESOURCE\$1GOVERNOR** als Optionsnamen aus.**

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

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

### CLI
<a name="ResourceGovernor.Add.CLI"></a>

**So fügen Sie die Option `RESOURCE_GOVERNOR` hinzu**
+ Fügen Sie die Option `RESOURCE_GOVERNOR` zur Optionsgruppe hinzu.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds add-option-to-option-group \
      --option-group-name resource-governor-ee-2022 \
      --options "OptionName=RESOURCE_GOVERNOR" \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds add-option-to-option-group ^
      --option-group-name resource-governor-ee-2022 ^
      --options "OptionName=RESOURCE_GOVERNOR" ^
      --apply-immediately
  ```

## Zuordnen der Optionsgruppe zu Ihrer DB-Instance
<a name="ResourceGovernor.Apply"></a>

Um die `RESOURCE_GOVERNOR` Optionsgruppe Ihrer DB-Instance zuzuordnen, verwenden Sie den oder den AWS-Managementkonsole . AWS CLI

### Konsole
<a name="ResourceGovernor.Apply.Console"></a>

Um die Aktivierung von Resource Governor abzuschließen, ordnen Sie Ihre `RESOURCE_GOVERNOR` Optionsgruppe einer neuen oder vorhandenen DB-Instance zu:
+ Ordnen Sie sie bei einer neuen DB-Instance zu, wenn Sie die Instance starten. Weitere Informationen finden Sie unter [Erstellen einer Amazon-RDS-DB-Instance](USER_CreateDBInstance.md).
+ Ordnen Sie sie für eine vorhandene DB-Instance zu, indem Sie die Instance ändern. Weitere Informationen finden Sie unter [Ändern einer Amazon-RDS-DB-Instance](Overview.DBInstance.Modifying.md).

### CLI
<a name="ResourceGovernor.Apply.CLI"></a>

Sie können die `RESOURCE_GOVERNOR` Optionsgruppe einer neuen oder vorhandenen DB-Instance zuordnen.

**Um eine Instance mit der `RESOURCE_GOVERNOR` Optionsgruppe zu erstellen**
+ Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds create-db-instance \
      --db-instance-identifier mytestsqlserverresourcegovernorinstance \
      --db-instance-class db.m5.2xlarge \
      --engine sqlserver-ee \
      --engine-version 16.00 \
      --license-model license-included \
      --allocated-storage 100 \
      --master-username admin \
      --master-user-password password \
      --storage-type gp2 \
      --option-group-name resource-governor-ee-2022
  ```

  Für Windows:

  ```
  aws rds create-db-instance ^
      --db-instance-identifier mytestsqlserverresourcegovernorinstance ^
      --db-instance-class db.m5.2xlarge ^
      --engine sqlserver-ee ^
      --engine-version 16.00 ^
      --license-model license-included ^
      --allocated-storage 100 ^
      --master-username admin ^
      --master-user-password password ^
      --storage-type gp2 ^
      --option-group-name resource-governor-ee-2022
  ```

**So ändern Sie eine Instance, um die `RESOURCE_GOVERNOR`-Optionsgruppe zuzuordnen**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds modify-db-instance \
      --db-instance-identifier mytestinstance \
      --option-group-name resource-governor-ee-2022 \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier mytestinstance ^
      --option-group-name resource-governor-ee-2022 ^
      --apply-immediately
  ```

# Verwenden von Microsoft SQL Server Resource Governor für Ihre RDS for SQL Server-Instanz
<a name="ResourceGovernor.Using"></a>

Nachdem Sie die Option Resource Governor zu Ihrer Optionsgruppe hinzugefügt haben, ist Resource Governor auf Datenbank-Engine-Ebene noch nicht aktiv. Um die Ressourcenkontrolle vollständig zu aktivieren, müssen Sie die gespeicherten Prozeduren von RDS für SQL Server verwenden, um sie zu aktivieren und die erforderlichen Resource Governor-Objekte zu erstellen. Weitere Informationen finden Sie unter [Herstellen einer Verbindung mit Ihrer DB-Instance von Microsoft SQL Server](USER_ConnectToMicrosoftSQLServerInstance.md).

Stellen Sie zunächst eine Verbindung zu Ihrer SQL Server-Datenbank her und rufen Sie dann die entsprechenden gespeicherten RDS-Prozeduren für SQL Server auf, um die Konfiguration abzuschließen. Anleitungen zum Herstellen einer Verbindung zu Ihrer Datenbank finden Sie unter [Herstellen einer Verbindung mit Ihrer DB-Instance von Microsoft SQL Server](USER_ConnectToMicrosoftSQLServerInstance.md).

Anleitungen zum Aufrufen der einzelnen gespeicherten Prozeduren finden Sie in den folgenden Themen:

**Topics**
+ [

## Ressourcenpool verwalten
](#ResourceGovernor.ManageResourcePool)
+ [

## Arbeitslastgruppen verwalten
](#ResourceGovernor.ManageWorkloadGroups)
+ [

## Klassifikatorfunktion erstellen und registrieren
](#ResourceGovernor.ClassifierFunction)
+ [

## Klassifizierer-Funktion löschen
](#ResourceGovernor.DropClassifier)
+ [

## Klassifikatorfunktion deregistrieren
](#ResourceGovernor.DeregisterClassifier)
+ [

## Statistik zurücksetzen
](#ResourceGovernor.ResetStats)
+ [

## Änderungen der Konfiguration von Resource Governor
](#ResourceGovernor.ConfigChanges)
+ [

## TempDB an einen Ressourcenpool binden
](#ResourceGovernor.BindTempDB)
+ [

## TempDB von einem Ressourcenpool trennen
](#ResourceGovernor.UnbindTempDB)
+ [

## Steuerung der Ressourcen für Cleanup
](#ResourceGovernor.Cleanup)

## Ressourcenpool verwalten
<a name="ResourceGovernor.ManageResourcePool"></a>

### Ressourcenpool erstellen
<a name="ResourceGovernor.CreateResourcePool"></a>

Sobald Resource Governor in der Optionsgruppe aktiviert ist, können Sie benutzerdefinierte Ressourcenpools mithilfe von erstellen`rds_create_resource_pool`. Mit diesen Pools können Sie verschiedenen Workloads bestimmte Prozentsätze an CPU, Arbeitsspeicher und IOPS zuweisen.

**Usage**

```
USE [msdb]
EXEC dbo.rds_create_resource_pool    
    @pool_name=value,
    @MAX_CPU_PERCENT=value,
    @CAP_CPU_PERCENT=value,
    @MAX_MEMORY_PERCENT=value,
    @MAX_IOPS_PER_VOLUME=value
```

Die folgenden Parameter sind erforderlich:
+ `@group_name`- Ist der Name einer vorhandenen benutzerdefinierten Workload-Gruppe.
+ `@pool_name`- Ist der benutzerdefinierte Name für den Ressourcenpool. *pool\$1name*ist alphanumerisch, kann bis zu 128 Zeichen lang sein, muss innerhalb einer Database Engine-Instanz eindeutig sein und muss den Regeln für Datenbankbezeichner entsprechen.

Die folgenden Parameter sind optional:
+ `@MAX_CPU_PERCENT`- Gibt die maximale durchschnittliche CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten, wenn es zu einem CPU-Konflikt kommt. *value*ist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für *value* liegt zwischen 1 und 100.
+ `@CAP_CPU_PERCENT`— Gibt eine feste Obergrenze für die CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten. Schränkt die maximale CPU-Bandbreite auf den angegebenen Wert ein. *value*ist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für *value* liegt zwischen 1 und 100.
+ `@MAX_MEMORY_PERCENT`- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die Anfragen in diesem Ressourcenpool verwenden können. *value*ist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für *value* liegt zwischen 1 und 100.
+ `@MAX_IOPS_PER_VOLUME`- Gibt die maximale Anzahl von I/O Vorgängen pro Sekunde (IOPS) pro Festplattenvolume an, die für den Ressourcenpool zulässig sind. Der zulässige Bereich für *value* liegt zwischen 0 und 2^31-1 (2.147.483.647). Geben Sie 0 an, um ein IOPS-Limit für den Pool aufzuheben. Der Standardwert ist 0.

**Beispiele**

Beispiel für die Erstellung eines Ressourcenpools mit allen Standardwerten:

```
--This creates resource pool 'SalesPool' with all default values
USE [msdb]
EXEC rds_create_resource_pool @pool_name = 'SalesPool';
     
--Apply changes
USE [msdb]
EXEC msdb.dbo.rds_alter_resource_governor_configuration;
     
--Validate configuration
select * from sys.resource_governor_resource_pools
```

Beispiel für die Erstellung eines Ressourcenpools mit verschiedenen angegebenen Parametern:

```
--creates resource pool
USE [msdb]
EXEC dbo.rds_create_resource_pool    
@pool_name='analytics',
@MAX_CPU_PERCENT = 30,
@CAP_CPU_PERCENT = 40,
@MAX_MEMORY_PERCENT = 20;
            
--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;
    
--Validate configuration
select * from sys.resource_governor_resource_pools
```

### Ressourcenpool ändern
<a name="ResourceGovernor.AlterResourcePool"></a>

**Usage**

```
USE [msdb]
EXEC dbo.rds_alter_resource_pool    
    @pool_name=value,
    @MAX_CPU_PERCENT=value,
    @CAP_CPU_PERCENT=value,
    @MAX_MEMORY_PERCENT=value,
    @MAX_IOPS_PER_VOLUME=value;
```

Die folgenden Parameter sind erforderlich:
+ `@pool_name`- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools. Das Ändern des Standardressourcenpools ist in Amazon RDS SQL Server nicht zulässig.

Mindestens einer der optionalen Parameter muss angegeben werden:
+ `@MAX_CPU_PERCENT`- Gibt die maximale durchschnittliche CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten, wenn es zu einem CPU-Konflikt kommt. *value*ist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für *value* liegt zwischen 1 und 100.
+ `@CAP_CPU_PERCENT`— Gibt eine feste Obergrenze für die CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten. Schränkt die maximale CPU-Bandbreite auf den angegebenen Wert ein. *value*ist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für *value* liegt zwischen 1 und 100.
+ `@MAX_MEMORY_PERCENT`- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die Anfragen in diesem Ressourcenpool verwenden können. *value*ist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für *value* liegt zwischen 1 und 100.
+ `@MAX_IOPS_PER_VOLUME`- Gibt die maximale Anzahl von I/O Vorgängen pro Sekunde (IOPS) pro Festplattenvolume an, die für den Ressourcenpool zulässig sind. Der zulässige Bereich für *value* liegt zwischen 0 und 2^31-1 (2.147.483.647). Geben Sie 0 an, um ein IOPS-Limit für den Pool aufzuheben. Der Standardwert ist 0.

**Beispiele**

```
--This alters resource pool
USE [msdb]
EXEC dbo.rds_alter_resource_pool    
    @pool_name='analytics',
    @MAX_CPU_PERCENT = 10,
    @CAP_CPU_PERCENT = 20,
    @MAX_MEMORY_PERCENT = 50;

--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;

--Validate configuration.
select * from sys.resource_governor_resource_pools
```

### Ressourcenpool löschen
<a name="ResourceGovernor.DropResourcePool"></a>

**Usage**

```
USE [msdb]
EXEC dbo.rds_drop_resource_pool    
@pool_name=value;
```

Der folgende Parameter ist erforderlich:
+ `@pool_name`- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools.

**Anmerkung**  
Das Löschen des internen oder Standardressourcenpools ist in SQL Server nicht zulässig.

**Beispiele**

```
--This drops resource pool
USE [msdb]
EXEC dbo.rds_drop_resource_pool    
@pool_name='analytics'

--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;

--Validate configuration
select * from sys.resource_governor_resource_pools
```

## Arbeitslastgruppen verwalten
<a name="ResourceGovernor.ManageWorkloadGroups"></a>

Workload-Gruppen, die mit und erstellt `rds_create_workload_group` und verwaltet werden`rds_alter_workload_group`, ermöglichen es Ihnen, Wichtigkeitsstufen, Speicherzuweisungen und andere Parameter für Gruppen von Abfragen festzulegen.

### Workload-Gruppe erstellen
<a name="ResourceGovernor.CreateWorkloadGroup"></a>

**Usage**

```
USE [msdb]
EXEC dbo.rds_create_workload_group 
@group_name = value, 
@IMPORTANCE ={ LOW | MEDIUM | HIGH }, 
@REQUEST_MAX_MEMORY_GRANT_PERCENT =value, 
@REQUEST_MAX_CPU_TIME_SEC = value , 
@REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value, 
@MAX_DOP = value, 
@GROUP_MAX_REQUESTS = value, 
@pool_name = value
```

Die folgenden Parameter sind erforderlich:
+ `@pool_name`- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools.
+ `@group_name`- Ist der Name einer vorhandenen benutzerdefinierten Workload-Gruppe.

Die folgenden Parameter sind optional:
+ `@IMPORTANCE`— Gibt die relative Wichtigkeit einer Anfrage in der Workload-Gruppe an. Der Standardwert ist `MEDIUM`.
+ `@REQUEST_MAX_MEMORY_GRANT_PERCENT`- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die eine einzelne Anforderung aus dem Pool beanspruchen kann. *value*ist ein Prozentsatz der Ressourcenpoolgröße, definiert durch`MAX_MEMORY_PERCENT`. Der Standardwert ist 25.
+ `@REQUEST_MAX_CPU_TIME_SEC`- Gibt die maximale CPU-Zeit in Sekunden an, die eine Batch-Anfrage verwenden kann. *value*muss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für *value* ist 0, was unbegrenzt bedeutet.
+ `@REQUEST_MEMORY_GRANT_TIMEOUT_SEC`- Gibt die maximale Zeit in Sekunden an, für die eine Abfrage warten kann, bis eine Speicherzuweisung aus dem Abfrage-Workspace-Speicher verfügbar wird. *value*muss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für *value* 0 verwendet eine interne Berechnung, die auf den Abfragekosten basiert, um die maximale Zeit zu bestimmen.
+ `@MAX_DOP`- Gibt den maximalen Grad an Parallelität (`MAXDOP`) für die parallel Abfrageausführung an. Der zulässige Bereich für *value* liegt zwischen 0 und 64. Die Standardeinstellung für *value* 0 verwendet die globale Einstellung.
+ `@GROUP_MAX_REQUESTS`= Gibt die maximale Anzahl gleichzeitiger Anfragen an, die in der Workload-Gruppe ausgeführt werden dürfen. *value*muss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für *value* ist 0 und erlaubt eine unbegrenzte Anzahl von Anfragen.
+ `@pool_name`= Ordnet die Workload-Gruppe dem benutzerdefinierten Ressourcenpool zu, der durch den Ressourcenpool identifiziert wird*pool\$1name*, oder mit dem `default` Ressourcenpool. Wenn *pool\$1name* nicht angegeben, ist die Workload-Gruppe dem integrierten `default` Pool zugeordnet.

**Beispiele**

```
--This creates workload group named 'analytics'
USE msdb;
EXEC dbo.rds_create_workload_group 
    @group_name = 'analytics',
    @IMPORTANCE = 'HIGH',
    @REQUEST_MAX_MEMORY_GRANT_PERCENT = 25, 
    @REQUEST_MAX_CPU_TIME_SEC = 0, 
    @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 0, 
    @MAX_DOP = 0, 
    @GROUP_MAX_REQUESTS = 0, 
    @pool_name = 'analytics';

--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;
  
--Validate configuration
select * from sys.resource_governor_workload_groups
```

### Workload-Gruppe ändern
<a name="ResourceGovernor.AlterWorkloadGroup"></a>

**Usage**

```
EXEC msdb.dbo.rds_alter_workload_group
    @group_name = value,
    @IMPORTANCE = 'LOW|MEDIUM|HIGH',
    @REQUEST_MAX_MEMORY_GRANT_PERCENT = value,
    @REQUEST_MAX_CPU_TIME_SEC = value,
    @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value,
    @MAX_DOP = value,
    @GROUP_MAX_REQUESTS = value,
    @pool_name = value
```

Die folgenden Parameter sind erforderlich:
+ `@group_name`- Ist der Name einer Standard-Workload-Gruppe oder einer vorhandenen benutzerdefinierten Workload-Gruppe.

**Anmerkung**  
Es `REQUEST_MAX_MEMORY_GRANT_PERCENT` wird nur das Ändern von Parametern in der Standard-Workload-Gruppe unterstützt. Für die Standard-Workload-Gruppe `REQUEST_MAX_MEMORY_GRANT_PERCENT` muss der Wert zwischen 1 und 70 liegen. In der Standard-Workload-Gruppe können keine anderen Parameter geändert werden. Alle Parameter können in der benutzerdefinierten Workload-Gruppe geändert werden.

Die folgenden Parameter sind optional:
+ `@IMPORTANCE`- Gibt die relative Wichtigkeit einer Anfrage in der Workload-Gruppe an. Der Standardwert ist MEDIUM.
+ `@REQUEST_MAX_MEMORY_GRANT_PERCENT`- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die eine einzelne Anforderung aus dem Pool beanspruchen kann. *value*ist ein Prozentsatz der Ressourcenpoolgröße, definiert durch`MAX_MEMORY_PERCENT`. Der Standardwert ist 25. Bei Amazon RDS `REQUEST_MAX_MEMORY_GRANT_PERCENT` muss der Wert zwischen 1 und 70 liegen.
+ `@REQUEST_MAX_CPU_TIME_SEC`- Gibt die maximale CPU-Zeit in Sekunden an, die eine Batch-Anfrage verwenden kann. *value*muss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für *value* ist 0, was unbegrenzt bedeutet.
+ `@REQUEST_MEMORY_GRANT_TIMEOUT_SEC`- Gibt die maximale Zeit in Sekunden an, für die eine Abfrage warten kann, bis eine Speicherzuweisung aus dem Abfrage-Workspace-Speicher verfügbar wird. *value*muss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für *value* 0 verwendet eine interne Berechnung, die auf den Abfragekosten basiert, um die maximale Zeit zu bestimmen.
+ `@MAX_DOP`- Gibt den maximalen Grad an Parallelität (MAXDOP) für die parallel Abfrageausführung an. Der zulässige Bereich für *value* liegt zwischen 0 und 64. Die Standardeinstellung für *value* 0 verwendet die globale Einstellung.
+ `@GROUP_MAX_REQUESTS`— Gibt die maximale Anzahl gleichzeitiger Anfragen an, die in der Workload-Gruppe ausgeführt werden dürfen. *value*muss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für *value* ist 0 und erlaubt eine unbegrenzte Anzahl von Anfragen.
+ `@pool_name`- Ordnet die Workload-Gruppe dem benutzerdefinierten Ressourcenpool zu, der durch identifiziert wird*pool\$1name*.

**Beispiele**

Beispiel für die Änderung der Standard-Workload-Gruppe REQUEST\$1MAX\$1MEMORY\$1GRANT\$1PERCENT:

```
--Modify default workload group (set memory grant cap to 10%)
USE msdb
EXEC dbo.rds_alter_workload_group    
    @group_name = 'default',
    @REQUEST_MAX_MEMORY_GRANT_PERCENT=10;
    
--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;

--Validate configuration
SELECT * FROM sys.resource_governor_workload_groups WHERE name='default';
```

Beispiel für die Änderung einer nicht standardmäßigen Workload-Gruppe:

```
EXEC msdb.dbo.rds_alter_workload_group    
    @group_name = 'analytics',
    @IMPORTANCE = 'HIGH',
    @REQUEST_MAX_MEMORY_GRANT_PERCENT = 30,
    @REQUEST_MAX_CPU_TIME_SEC = 3600,
    @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 60,
    @MAX_DOP = 4,
    @GROUP_MAX_REQUESTS = 100;

--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;
```

Beispiel für das Verschieben einer nicht standardmäßigen Workload-Gruppe in einen anderen Ressourcenpool:

```
EXEC msdb.dbo.rds_alter_workload_group    
@group_name = 'analytics',
@pool_name='abc'

--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;

--Validate configuration
select * from sys.resource_governor_workload_groups
```

### Workload-Gruppe löschen
<a name="ResourceGovernor.DropWorkloadGroup"></a>

**Usage**

```
EXEC msdb.dbo.rds_drop_workload_group    
@group_name = value
```

Die folgenden Parameter sind erforderlich:
+ `@group_name`- Ist der Name einer vorhandenen benutzerdefinierten Workload-Gruppe.

**Beispiele**

```
--Drops a Workload Group:
EXEC msdb.dbo.rds_drop_workload_group    
@group_name = 'analytics';

--Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;

--Validate configuration
select * from sys.resource_governor_workload_groups
```

## Klassifikatorfunktion erstellen und registrieren
<a name="ResourceGovernor.ClassifierFunction"></a>

Dieses Verfahren erstellt eine Classifier-Funktion für die Ressourcenkontrolle in der Master-Datenbank, die Verbindungen zu benutzerdefinierten Workload-Gruppen auf der Grundlage bestimmter Kriterien (Benutzername, Datenbank, Host oder Anwendungsname) weiterleitet. Wenn die Ressourcenkontrolle aktiviert ist und in der Konfiguration der Ressourcenkontrolle eine Klassifizierungsfunktion angegeben ist, bestimmt die Funktionsausgabe die für neue Sitzungen verwendete Workload-Gruppe. In Ermangelung einer Klassifizierungsfunktion werden alle Sitzungen der `default` Gruppe zugeordnet.

**Features:**
+ Unterstützt bis zu zwei Workload-Gruppen mit ihren jeweiligen Routing-Bedingungen.
+ Kombiniert Kriterien mit `AND` Bedingungen innerhalb jeder Gruppe.
+ Erfordert mindestens ein Routingkriterium pro Workload-Gruppe.
+ Der Funktionsname muss mit beginnen`rg_classifier_`.
+ Standardgruppenzuweisung, wenn keine Bedingungen erfüllt sind.

Die Klassifizierungsfunktion weist die folgenden Eigenschaften und Verhaltensweisen auf:
+ Die Funktion ist im Serverbereich (in der Master-Datenbank) definiert.
+ Die Funktion ist mit Schemabindung definiert.
+ Die Funktion wird für jede neue Sitzung ausgewertet, auch wenn das Verbindungspooling aktiviert ist.
+ Die Funktion gibt den Workload-Gruppenkontext für die Sitzung zurück. Die Sitzung wird der vom Classifier zurückgegebenen Workload-Gruppe für die Dauer der Sitzung zugewiesen.
+ Wenn die Funktion NULL, Standard oder den Namen einer nicht existierenden Workload-Gruppe zurückgibt, wird der Sitzung der Standard-Workload-Gruppenkontext zugewiesen. Der Sitzung wird außerdem der Standardkontext zugewiesen, falls die Funktion aus irgendeinem Grund fehlschlägt.
+ Sie können mehrere Klassifikatorfunktionen erstellen. In SQL Server kann jedoch jeweils nur eine Klassifikatorfunktion registriert werden.
+ Die Klassifiziererfunktion kann nur gelöscht werden, wenn ihr Klassifiziererstatus mithilfe der Deregistrierungsprozedur (`EXEC dbo.msdb.rds_alter_resource_governor_configuration @deregister_function = 1;`) entfernt wird, die den Funktionsnamen auf NULL setzt, oder es wird eine andere Klassifiziererfunktion mit () registriert `EXEC dbo.msdb.rds_alter_resource_governor_configuration @classifier_function = <function_name>;`
+ In Ermangelung einer Klassifizierungsfunktion werden alle Sitzungen in die Standardgruppe eingeteilt.
+ Sie können eine Klassifikatorfunktion nicht ändern, solange sie in der Resource Governor-Konfiguration referenziert wird. Sie können die Konfiguration jedoch ändern, um eine andere Klassifizierungsfunktion zu verwenden. Wenn Sie Änderungen am Klassifikator vornehmen möchten, sollten Sie erwägen, ein Paar von Klassifikatorfunktionen zu erstellen. Sie könnten beispielsweise und erstellen`rg_classifier_a`. `rg_classifier_b`

**Usage**

```
EXEC msdb.dbo.rds_create_classifier_function 
@function_name = value,
@workload_group1 = value, 
@user_name1 = value,
@db_name1 = value,
@host_name1 = value, 
@app_name1 = value, 
@workload_group2 = value,
@user_name2 = value,
@db_name2 = value,
@host_name2 = value,
@app_name2 = value
```

Die folgenden Parameter sind erforderlich:
+ `@function_name`- Name der Klassifikatorfunktion. Muss beginnen mit `rg_classifier_`
+ `@workload_group1`- Name der ersten Workload-Gruppe

Die folgenden Parameter sind optional:

(Mindestens eines dieser Kriterien muss für Gruppe 1 angegeben werden)
+ `@user_name1`- Anmeldename für Gruppe 1
+ `@db_name1`- Datenbankname für Gruppe 1
+ `@host_name1`- Hostname für Gruppe 1
+ `@app_name1`- Anwendungsname für Gruppe 1

(Wenn Gruppe 2 angegeben ist, muss mindestens ein Kriterium angegeben werden)
+ `@workload_group2`- Name der zweiten Workload-Gruppe
+ `@user_name2`- Anmeldename für Gruppe 2
+ `@db_name2`- Datenbankname für Gruppe 2
+ `@host_name2`- Hostname für Gruppe 2
+ `@app_name2`- Anwendungsname für Gruppe 2

**Anmerkung**  
Systemkonten, Datenbanken, Anwendungen und Hosts sind eingeschränkt.

**Beispiele**

Einfaches Beispiel mit einer Workload-Gruppe:

```
/*Create a classifier to route all requests from 'PowerBI' app to workload group 
'reporting_group'*/

EXEC msdb.dbo.rds_create_classifier_function
@function_name = 'rg_classifier_a',
@workload_group1 = 'reporting_group',
@app_name1 = 'PowerBI';

--Register the classifier
EXEC msdb.dbo.rds_alter_resource_governor_configuration
@classifier_function = 'rg_classifier_a';

-- Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration

/*Query sys.resource_governor_configuration to validate that resource governor is enabled and is using the classifier function we created and registered*/

use master
go
SELECT OBJECT_SCHEMA_NAME(classifier_function_id) AS classifier_schema_name,
       OBJECT_NAME(classifier_function_id) AS classifier_object_name,
       is_enabled
FROM sys.resource_governor_configuration;
```

## Klassifizierer-Funktion löschen
<a name="ResourceGovernor.DropClassifier"></a>

**Usage**

```
USE [msdb]
EXEC dbo.rds_drop_classifier_function
@function_name = value;
```

Der folgende Parameter ist erforderlich:
+ `@function_name`- Ist der Name einer vorhandenen benutzerdefinierten Klassifikatorfunktion

**Beispiel**

```
EXEC msdb.dbo.rds_drop_classifier_function
@function_name = 'rg_classifier_b';
```

## Klassifikatorfunktion deregistrieren
<a name="ResourceGovernor.DeregisterClassifier"></a>

Gehen Sie wie folgt vor, um die Registrierung der Klassifikatorfunktion aufzuheben. Nachdem die Registrierung der Funktion aufgehoben wurde, werden neue Sitzungen automatisch der Standard-Workload-Gruppe zugewiesen.

**Usage**

```
USE [msdb]
EXEC dbo.rds_alter_resource_governor_configuration    
@deregister_function = 1;
```

Für die Abmeldung ist der folgende Parameter erforderlich:
+ `@deregister_function`muss 1 sein

**Beispiel**

```
EXEC msdb.dbo.rds_alter_resource_governor_configuration 
    @deregister_function = 1;
GO

-- Apply changes
EXEC msdb.dbo.rds_alter_resource_governor_configuration;
```

## Statistik zurücksetzen
<a name="ResourceGovernor.ResetStats"></a>

Die Resource Governor-Statistiken sind seit dem letzten Serverneustart kumulativ. Wenn Sie ab einem bestimmten Zeitpunkt Statistiken sammeln müssen, können Sie die Statistiken mithilfe der folgenden gespeicherten Amazon RDS-Prozedur zurücksetzen.

**Usage**

```
USE [msdb]
EXEC dbo.rds_alter_resource_governor_configuration  
@reset_statistics = 1;
```

Zum Zurücksetzen von Statistiken ist der folgende Parameter erforderlich:
+ `@reset_statistics`muss 1 sein

## Änderungen der Konfiguration von Resource Governor
<a name="ResourceGovernor.ConfigChanges"></a>

Wenn Resource Governor nicht aktiviert ist, `rds_alter_resource_governor_configuration` aktiviert Resource Governor. Die Aktivierung der Ressourcenkontrolle hat folgende Ergebnisse:
+ Die Klassifizierungsfunktion, falls vorhanden, wird für neue Sitzungen ausgeführt, wobei sie Workload-Gruppen zugewiesen werden.
+ Die in der Resource Governor-Konfiguration angegebenen Ressourcengrenzwerte werden eingehalten und durchgesetzt.
+ Die in der Resource Governor-Konfiguration angegebenen Ressourcengrenzwerte werden eingehalten und durchgesetzt.
+ Anfragen, die vor der Aktivierung von Resource Governor bestanden haben, können von Konfigurationsänderungen betroffen sein, die bei der Aktivierung von Resource Governor vorgenommen wurden.
+ Bestehende Anfragen, bevor Resource Governor aktiviert wurde, können von allen Konfigurationsänderungen betroffen sein, die vorgenommen wurden, wenn Resource Governor aktiviert wurde.
+ Auf RDS für SQL Server `EXEC msdb.dbo.rds_alter_resource_governor_configuration` müssen alle Änderungen an der Resource Governor-Konfiguration ausgeführt werden, damit sie wirksam werden. 

**Usage**

```
USE [msdb]
EXEC dbo.rds_alter_resource_governor_configuration
```

## TempDB an einen Ressourcenpool binden
<a name="ResourceGovernor.BindTempDB"></a>

Mithilfe von Amazon RDS SQL Server Version 2019 und höher können Sie speicheroptimierte tempdb-Metadaten `rds_bind_tempdb_metadata_to_resource_pool` an einen bestimmten Ressourcenpool binden.

**Anmerkung**  
Die speicheroptimierte Tempdb-Metadatenfunktion muss aktiviert werden, bevor tempdb-Metadaten an den Ressourcenpool gebunden werden können. Um diese Funktion auf Amazon RDS zu aktivieren, ist es ein statischer Parameter`tempdb metadata memory-optimized`.

Aktivieren Sie den statischen Parameter auf Amazon RDS und führen Sie einen Neustart ohne Failover durch, damit der Parameter wirksam wird:

```
aws rds modify-db-parameter-group \
    --db-parameter-group-name test-sqlserver-ee-2022 \
    --parameters "ParameterName='tempdb metadata memory-optimized',ParameterValue=True,ApplyMethod=pending-reboot"
```

**Usage**

```
USE [msdb]
EXEC dbo.rds_bind_tempdb_metadata_to_resource_pool  
@pool_name=value;
```

Der folgende Parameter ist erforderlich:
+ `@pool_name`- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools.

**Anmerkung**  
Diese Änderung erfordert außerdem einen Neustart des SQL-Dienstes ohne Failover, damit sie wirksam wird, auch wenn die speicheroptimierte TempDB-Metadatenfunktion bereits aktiviert ist.

## TempDB von einem Ressourcenpool trennen
<a name="ResourceGovernor.UnbindTempDB"></a>

Entbindet speicheroptimierte tempdb-Metadaten aus einem Ressourcenpool.

**Anmerkung**  
Diese Änderung erfordert außerdem einen Neustart des SQL-Dienstes ohne Failover, um wirksam zu werden

**Usage**

```
USE [msdb]
EXEC dbo.rds_unbind_tempdb_metadata_from_resource_pool
```

## Steuerung der Ressourcen für Cleanup
<a name="ResourceGovernor.Cleanup"></a>

Mit diesem Verfahren werden alle zugehörigen Objekte bereinigt, nachdem Sie die Option „Ressourcenkontrolle“ aus der Optionsgruppe entfernt haben. Dadurch wird die Ressourcenkontrolle deaktiviert, die Standard-Workload-Gruppe auf die Standardeinstellungen zurückgesetzt und benutzerdefinierte Workload-Gruppen, Ressourcenpools und Klassifizierungsfunktionen entfernt.

**Schlüsselfunktionen**
+ Setzt die Standard-Workload-Gruppe auf die Standardeinstellungen zurück
+ Deaktiviert den Ressourcengouverneur
+ Entfernt benutzerdefinierte Workload-Gruppen
+ Entfernt benutzerdefinierte Ressourcenpools
+ Löscht Klassifikatorfunktionen
+ Entfernt die Tempdb-Ressourcenpool-Bindung, falls sie aktiviert ist

**Wichtig**  
Bei dieser Bereinigung kann ein Fehler auftreten, wenn in der Workload-Gruppe aktive Sitzungen vorhanden sind. Warten Sie entweder, bis die aktiven Sitzungen abgeschlossen sind, oder beenden Sie die aktiven Sitzungen gemäß Ihren Geschäftsanforderungen. Es wird empfohlen, dies während des Wartungsfensters auszuführen.   
Bei dieser Bereinigung kann ein Fehler auftreten, wenn ein Ressourcenpool an tempdb gebunden war und ein Neustart ohne Failover noch nicht stattgefunden hat. Wenn Sie zuvor einen Ressourcenpool an tempdb gebunden oder einen Ressourcenpool von tempdb getrennt haben, führen Sie einen Neustart ohne Failover durch, damit die Änderung wirksam wird. Es wird empfohlen, dies während des Wartungsfensters auszuführen.

**Usage**

```
USE [msdb]
EXEC dbo.rds_cleanup_resource_governor
```

## Überlegungen zur Multi-AZ-Bereitstellung
<a name="ResourceGovernor.Considerations"></a>

RDS für SQL Server repliziert Resource Governor auf eine sekundäre Instanz in einer Multi-AZ-Bereitstellung. Sie können überprüfen, wann der geänderte und der neue Resource Governor zuletzt mit der sekundären Instanz synchronisiert wurden.

Verwenden Sie die folgende Abfrage, um die `last_sync_time` Replikation zu überprüfen:

```
SELECT * from msdb.dbo.rds_fn_server_object_last_sync_time();
```

Wenn in den Abfrageergebnissen die Synchronisierungszeit nach der Aktualisierungs- oder Erstellungszeit der Ressourcenkontrolle liegt, wird die Ressourcenkontrolle mit der Sekundärseite synchronisiert.

Um ein manuelles DB-Failover durchzuführen, um zu bestätigen, dass der Resource Governor repliziert, warten Sie zunächst, `last_sync_time` bis der aktualisiert wird. Fahren Sie dann mit dem Multi-AZ-Failover fort.

## Überlegungen zu Read Replicas
<a name="ResourceGovernor.ReadReplica"></a>
+ Verwenden Sie für SQL Server-Replikate in derselben Region wie die Quell-DB-Instance dieselbe Optionsgruppe wie die Quelle. Änderungen an der Optionsgruppe werden unabhängig von ihren Wartungsfenstern sofort auf die Replikate übertragen.
+ Wenn Sie ein regionsübergreifendes SQL Server-Replikat erstellen, erstellt RDS eine spezielle Optionsgruppe dafür.
+ Ein regionsübergreifendes SQL-Server-Replikat kann nicht aus seiner dedizierten Optionsgruppe entfernt werden. Die dedizierte Optionsgruppe eines regionsübergreifenden SQL-Server-Replikats kann nicht von anderen DB-Instances verwendet werden.
+ Bei der Option Resource Governor handelt es sich um nicht replizierte Optionen. Sie können nicht replizierte Optionen einer dedizierten Optionsgruppe hinzufügen oder daraus entfernen.
+ Wenn Sie ein regionsübergreifendes SQL-Server-Lesereplikat hochstufen, verhält sich das hochgestufte Lesereplikat genau so wie andere DB-Instances von SQL Server, einschließlich der Verwaltung seiner Optionen.

**Anmerkung**  
Wenn Sie Resource Governor für eine Read Replica verwenden, müssen Sie manuell sicherstellen, dass Resource Governor auf Ihrer Read Replica mithilfe von gespeicherten Amazon RDS-Prozeduren konfiguriert wurde, nachdem die Option zur Optionsgruppe hinzugefügt wurde. Resource Governor-Konfigurationen werden nicht automatisch auf die Read Replica repliziert. Außerdem unterscheidet sich die Arbeitslast auf der Read Replica in der Regel von der der primären Instanz. Daher wird empfohlen, die Ressourcenkonfiguration auf der Replica auf der Grundlage Ihrer Arbeitslast und Ihres Instanztyps anzuwenden. Sie können diese gespeicherten Amazon RDS-Prozeduren auf Read Replica unabhängig voneinander ausführen, um Resource Governor für Read Replica zu konfigurieren.

# Überwachen Sie die Microsoft SQL Server-Ressourcenkontrolle mithilfe von Systemansichten für Ihre RDS for SQL Server-Instanz
<a name="ResourceGovernor.Monitoring"></a>

Die Resource Governor-Statistiken sind seit dem letzten Serverneustart kumulativ. Wenn Sie ab einem bestimmten Zeitpunkt Statistiken sammeln müssen, können Sie die Statistiken mithilfe der folgenden gespeicherten Amazon RDS-Prozedur zurücksetzen:

```
EXEC msdb.dbo.rds_alter_resource_governor_configuration  
@reset_statistics = 1;
```

## Laufzeitstatistiken für den Ressourcenpool
<a name="ResourceGovernor.ResourcePoolStats"></a>

Für jeden Ressourcenpool verfolgt Resource Governor die CPU- und Speicherauslastung, out-of-memory Ereignisse, Speicherzuweisungen, I/O und andere Statistiken. Weitere Informationen finden Sie unter [sys.dm\$1resource\$1governor\$1resource\$1pools](https://learn.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-resource-governor-resource-pools-transact-sql?view=sql-server-ver17).

Die folgende Abfrage gibt eine Teilmenge der verfügbaren Statistiken für alle Ressourcenpools zurück:

```
SELECT rp.pool_id,
       rp.name AS resource_pool_name,
       wg.workload_group_count,
       rp.statistics_start_time,
       rp.total_cpu_usage_ms,
       rp.target_memory_kb,
       rp.used_memory_kb,
       rp.out_of_memory_count,
       rp.active_memgrant_count,
       rp.total_memgrant_count,
       rp.total_memgrant_timeout_count,
       rp.read_io_completed_total,
       rp.write_io_completed_total,
       rp.read_bytes_total,
       rp.write_bytes_total,
       rp.read_io_stall_total_ms,
       rp.write_io_stall_total_ms
FROM sys.dm_resource_governor_resource_pools AS rp
OUTER APPLY (
            SELECT COUNT(1) AS workload_group_count
            FROM sys.dm_resource_governor_workload_groups AS wg
            WHERE wg.pool_id = rp.pool_id
            ) AS wg;
```

# Deaktivieren der Microsoft SQL Server-Ressourcenkontrolle für Ihre RDS for SQL Server-Instanz
<a name="ResourceGovernor.Disabling"></a>

Wenn Sie die Ressourcenkontrolle auf RDS für SQL Server deaktivieren, beendet der Dienst die Verwaltung von Arbeitslastressourcen. Bevor Sie Resource Governor deaktivieren, sollten Sie überprüfen, wie sich dies auf Ihre Datenbankverbindungen und Konfigurationen auswirkt.

Die Deaktivierung von Resource Governor hat die folgenden Ergebnisse:
+ Die Klassifizierungsfunktion wird nicht ausgeführt, wenn eine neue Verbindung geöffnet wird.
+ Neue Verbindungen werden automatisch der Standard-Workload-Gruppe zugeordnet.
+ Alle vorhandenen Einstellungen für Arbeitslastgruppen und Ressourcenpools werden auf ihre Standardwerte zurückgesetzt.
+ Wenn Grenzwerte erreicht werden, werden keine Ereignisse ausgelöst.
+ Änderungen an der Konfiguration von Resource Governor können vorgenommen werden, aber die Änderungen werden erst wirksam, wenn Resource Governor aktiviert ist.

Um Resource Governor zu deaktivieren, entfernen Sie die `RESOURCE_GOVERNOR` Option aus ihrer Optionsgruppe.

## Konsole
<a name="ResourceGovernor.Disabling.Console"></a>

Mit dem folgenden Verfahren wird die Option `RESOURCE_GOVERNOR` entfernt.

**Um die Option RESOURCE\$1GOVERNOR aus ihrer Optionsgruppe zu entfernen**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

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

1. Wählen Sie die Optionsgruppe mit der Option `RESOURCE_GOVERNOR` (`resource-governor-ee-2022` in den vorherigen Beispielen).

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

1. Wählen Sie unter **Löschoptionen** **RESOURCE\$1GOVERNOR** für Zu löschende **Optionen** aus.

1. 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.

1. Wählen Sie **Löschen** aus.

## CLI
<a name="ResourceGovernor.Disabling.CLI"></a>

Mit dem folgenden Verfahren wird die Option `RESOURCE_GOVERNOR` entfernt.

**Um die Option RESOURCE\$1GOVERNOR aus ihrer Optionsgruppe zu entfernen**
+ Führen Sie einen der folgenden Befehle aus.  
**Example**  

  Für Linux, macOS oder Unix:

  ```
  aws rds remove-option-from-option-group \
      --option-group-name resource-governor-ee-2022 \
      --options RESOURCE_GOVERNOR \
      --apply-immediately
  ```

  Für Windows:

  ```
  aws rds remove-option-from-option-group ^
      --option-group-name resource-governor-ee-2022 ^
      --options RESOURCE_GOVERNOR ^
      --apply-immediately
  ```

# Bewährte Methoden für die Konfiguration von Resource Governor auf RDS für SQL Server
<a name="ResourceGovernor.BestPractices"></a>

Um den Ressourcenverbrauch zu kontrollieren, unterstützt RDS for SQL Server Resource Governor von Microsoft SQL Server. Die folgenden bewährten Methoden helfen Ihnen dabei, häufig auftretende Konfigurationsprobleme zu vermeiden und die Datenbankleistung zu optimieren.

1. Die Resource Governor-Konfiguration wird in der `master` Datenbank gespeichert. Es wird empfohlen, eine Kopie der Resource Governor-Konfigurationsskripten immer separat zu speichern.

1. Die Klassifizierungsfunktion verlängert die Verarbeitungszeit für die Anmeldung. Es wird daher empfohlen, komplexe Logik im Klassifikator zu vermeiden. Eine zu komplexe Funktion kann zu Verzögerungen bei der Anmeldung oder zu Verbindungszeitüberschreitungen führen, einschließlich Amazon RDS-Automatisierungssitzungen. Dies kann sich auf die Fähigkeit der Amazon RDS-Automatisierung auswirken, den Zustand der Instance zu überwachen. Daher wird immer empfohlen, die Classifier-Funktion vor der Implementierung in Produktionsumgebungen in einer Vorproduktionsumgebung zu testen.

1. Vermeiden Sie es, hohe Werte (über 70) für `REQUEST_MAX_MEMORY_GRANT_PERCENT` Workload-Gruppen festzulegen, da dies verhindern kann, dass die Datenbank-Instance ausreichend Speicher für andere gleichzeitige Abfragen zuweist, was möglicherweise zu Timeout-Fehlern bei der Speicherzuweisung führen kann (Fehler 8645). Umgekehrt könnte ein zu niedriger Wert (kleiner als 1) oder auf 0 verhindern, dass Abfragen, die Memory-Workspace benötigen (z. B. solche, die Sortier- oder Hashoperationen beinhalten), in benutzerdefinierten Workload-Gruppen ordnungsgemäß ausgeführt werden. RDS setzt diese Grenzwerte durch, indem es die Werte für Standard-Workload-Gruppen auf Werte zwischen 1 und 70 beschränkt.

1. Beim Binden von tempdb an einen Ressourcenpool erreicht der Pool nach dem Binden speicheroptimierter tempdb-Metadaten an einen Pool möglicherweise seine maximale Einstellung, und alle Abfragen, die verwendet werden, schlagen `tempdb` möglicherweise mit Fehlern fehl. out-of-memory Unter bestimmten Umständen kann der SQL Server möglicherweise beendet werden, wenn ein out-of-memory Fehler auftritt. Um die Wahrscheinlichkeit zu verringern, dass dies passiert, setzen Sie den Speicherpool `MAX_MEMORY_PERCENT` auf einen hohen Wert.