

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.

# Arbeiten mit Speicher in RDS für SQL Server
<a name="Appendix.SQLServer.CommonDBATasks.DatabaseStorage"></a>

Mit RDS for SQL Server können Sie Ihrer RDS for SQL Server-Instanz bis zu drei zusätzliche Volumes hinzufügen, die jeweils einem eindeutigen Windows-Laufwerksbuchstaben zugeordnet sind. Auf diese Weise können Sie Datenbankdateien über das `D:` Standardlaufwerk hinaus auf mehrere Volumes verteilen. Wenn Sie ein Speichervolume hinzufügen, erhalten Sie mehr Flexibilität bei der Verwaltung von Datenbankdateien und der Speicheroptimierung.

Zu den Vorteilen gehören:
+ **Flexible Dateiverteilung** — Verteilen Sie Datenbankdaten- und Protokolldateien auf mehrere Volumes, um die I/O-Leistung zu verbessern.
+ **Speicheroptimierung** — Verwenden Sie unterschiedliche Speichertypen und Konfigurationen für unterschiedliche Workload-Anforderungen.
+ **Skalierbarkeit** — Fügen Sie Speicherkapazität hinzu, ohne bestehende Volumes zu ändern.

**Topics**
+ [Überlegungen zur Verwendung zusätzlicher Speichervolumes mit RDS für SQL Server](#SQLServer.ASV.Considerations)
+ [Mit RDS for SQL Server können Sie Speichervolumes hinzufügen, entfernen oder ändern](#SQLServer.ASV.Management)
+ [Stellen Sie Vorgänge für zusätzliche Speichervolumes mit RDS für SQL Server wieder her](#SQLServer.ASV.Restore)
+ [Anwendungsfälle für zusätzliche Speichervolumes mit RDS für SQL Server](#SQLServer.ASV.UseCases)

## Überlegungen zur Verwendung zusätzlicher Speichervolumes mit RDS für SQL Server
<a name="SQLServer.ASV.Considerations"></a>

Beachten Sie die folgenden Funktionen und Einschränkungen, wenn Sie zusätzliche Speichervolumes mit RDS für SQL Server verwenden:
+ Sie können Speichervolumes nur in SQL Server Standard Edition (SE), Enterprise Edition (EE) und Developer Edition (DEV-EE) hinzufügen.
+ Sie können bis zu 3 zusätzliche Speichervolumes pro Instanz hinzufügen.
+ Datenträgernamen werden den Windows-Laufwerksbuchstaben automatisch wie folgt zugeordnet:
  + `rdsdbdata2`— Laufwerk `H:`
  + `rdsdbdata3`— `I:` fahren
  + `rdsdbdata4`— `J:` fahren
+ TempDB-Dateien verwenden das `T:` Laufwerk weiterhin, wenn sie den NVMe Instanzspeicher verwenden. SQL Server-Audit-Dateien und Microsoft Business Intelligence (MSBI) -Dateien verbleiben auf dem `D:` Laufwerk.
+ Sie können nur die Speichertypen General Purpose SSD (gp3) und Provisioned IOPS SSD (io2) hinzufügen.
+ Die Mindestspeichergröße für zusätzliche Speichervolumes entspricht dem für das Standardlaufwerk festgelegten Grenzwert. `D:` Die maximale Speichergröße für Ihre DB-Instance beträgt insgesamt 256 TiB für alle Volumes.
+ Das Hinzufügen von Speicher-Volumes zu Instances mit Read Replicas oder zu Read Replica-Instances wird nicht unterstützt.
+ Das Hinzufügen von Speichervolumes zu Instanzen, die für regionsübergreifendes automatisiertes Backup aktiviert sind, wird nicht unterstützt.
+ Die Konfiguration zusätzlicher Speichervolumes für die automatische Speicherskalierung wird nicht unterstützt.
+ Das Verschieben von Dateien zwischen Volumes nach der Erstellung wird nicht unterstützt.
+ Sie können das `D:` Volume nicht löschen, aber Sie können andere Speichervolumes löschen, solange sie leer sind.
+ Das Ändern der Größe vorhandener Volumes während der Wiederherstellung oder point-in-time Wiederherstellung von Snapshots (PITR) wird nicht unterstützt. Sie können jedoch während der Wiederherstellung neue Speichervolumes hinzufügen.

## Mit RDS for SQL Server können Sie Speichervolumes hinzufügen, entfernen oder ändern
<a name="SQLServer.ASV.Management"></a>

Mit der Taste AWS CLI oder können Sie zusätzliche Speichervolumes hinzufügen, ändern und entfernen AWS-Managementkonsole. Alle Operationen verwenden die `modify-db-instance` API-Operation mit dem `additional-storage-volumes` Parameter.

**Wichtig**  
Wenn Sie zusätzliche Speichervolumes hinzufügen oder entfernen, wird die Aktion „Backup ausstehend“ angezeigt und es wird ein Sperrfenster für die point-in-time Wiederherstellung angezeigt. Dieses Fenster wird geschlossen, wenn der Backup-Workflow abgeschlossen ist.

**Topics**
+ [Hinzufügen von Speichervolumes](#SQLServer.ASV.Adding)
+ [Skalierung zusätzlicher Speichervolumes](#SQLServer.ASV.Scaling)
+ [Zusätzliche Speichervolumes werden entfernt](#SQLServer.ASV.Removing)

### Hinzufügen von Speichervolumes
<a name="SQLServer.ASV.Adding"></a>

Sie können bis zu drei Speichervolumes über das `D:` Standardlaufwerk hinaus hinzufügen. Um Ihrer RDS for SQL Server-Instanz ein neues Speichervolume hinzuzufügen, verwenden Sie den `modify-db-instance` Befehl mit dem `additional-storage-volumes` Parameter.

Im folgenden Beispiel wird ein neues 4.000 GiB General Purpose SSD (GP3) -Volume mit dem Namen `rdsdbdata4` hinzugefügt.

```
aws rds modify-db-instance \
  --db-instance-identifier my-sql-server-instance \
  --region us-east-1 \
  --additional-storage-volumes '[{"VolumeName":"rdsdbdata4","StorageType":"gp3","AllocatedStorage":4000}]' \
  --apply-immediately
```

### Skalierung zusätzlicher Speichervolumes
<a name="SQLServer.ASV.Scaling"></a>

Sie können jede Speichereinstellung für Ihre zusätzlichen Volumes ändern, mit Ausnahme der Speichergröße. Im folgenden Beispiel wird die IOPS-Einstellung für das `rdsdbdata2` Volume geändert.

```
aws rds modify-db-instance \
  --db-instance-identifier my-sql-server-instance \
  --region us-east-1 \
  --additional-storage-volumes '[{"VolumeName":"rdsdbdata2","IOPS":4000}]' \
  --apply-immediately
```

### Zusätzliche Speichervolumes werden entfernt
<a name="SQLServer.ASV.Removing"></a>

Sie können das `D:` Volume nicht löschen, aber Sie können andere Speichervolumes löschen, wenn sie leer sind.

**Warnung**  
Bevor Sie ein zusätzliches Speichervolume entfernen, stellen Sie sicher, dass keine Datenbankdateien auf dem Volume gespeichert sind.

Im folgenden Beispiel wird das `rdsdbdata4` Volume entfernt.

```
aws rds modify-db-instance \
  --db-instance-identifier my-sql-server-instance \
  --region us-east-1 \
  --additional-storage-volumes '[{"VolumeName":"rdsdbdata4","SetForDelete":true}]' \
  --apply-immediately
```

## Stellen Sie Vorgänge für zusätzliche Speichervolumes mit RDS für SQL Server wieder her
<a name="SQLServer.ASV.Restore"></a>

Wenn Sie Ihre Datenbank wiederherstellen, können Sie Speichervolumes hinzufügen. Sie können auch die Speichereinstellungen vorhandener Volumes ändern.

**Topics**
+ [Snapshot-Wiederherstellung](#SQLServer.ASV.SnapshotRestore)
+ [Point-in-time Wiederherstellung](#SQLServer.ASV.PITR)
+ [Native Datenbankwiederherstellung](#SQLServer.ASV.NativeRestore)

### Snapshot-Wiederherstellung
<a name="SQLServer.ASV.SnapshotRestore"></a>

Bei der Wiederherstellung aus einem Snapshot können Sie neue zusätzliche Speichervolumes hinzufügen oder die Einstellungen für IOPS, Durchsatz und Speichertyp vorhandener Volumes ändern.

Das folgende Beispiel stellt eine DB-Instance aus einem Snapshot wieder her und ändert die IOPS-Einstellung für das Volume: `rdsdbdata2`

```
aws rds restore-db-instance-from-db-snapshot \
  --db-instance-identifier my-restored-instance \
  --db-snapshot-identifier my-snapshot \
  --region us-east-1 \
  --additional-storage-volumes '[{"VolumeName":"rdsdbdata2","IOPS":5000}]'
```

### Point-in-time Wiederherstellung
<a name="SQLServer.ASV.PITR"></a>

Während der point-in-time Wiederherstellung (PITR) können Sie neue zusätzliche Speichervolumes mit benutzerdefinierten Konfigurationen hinzufügen.

Im folgenden Beispiel wird PITR ausgeführt und ein neues 5.000 GiB General Purpose SSD (gp3) -Volume hinzugefügt:

```
aws rds restore-db-instance-to-point-in-time \
  --source-db-instance-identifier my-source-instance \
  --target-db-instance my-pitr-instance \
  --use-latest-restorable-time \
  --region us-east-1 \
  --additional-storage-volumes '[{"VolumeName":"rdsdbdata4","StorageType":"gp3","AllocatedStorage":5000,"IOPS":5000,"StorageThroughput":200}]'
```

### Native Datenbankwiederherstellung
<a name="SQLServer.ASV.NativeRestore"></a>

Sie können die `rds_restore_database` gespeicherte Prozedur verwenden, um Datenbanken auf bestimmten zusätzlichen Speichervolumes wiederherzustellen. Zwei neue Parameter unterstützen die Volumenauswahl:

**`data_file_volume`**  
Gibt den Laufwerksbuchstaben für Datenbankdatendateien an

**`log_file_volume`**  
Gibt den Laufwerksbuchstaben für Datenbank-Logdateien an

Im folgenden Beispiel wird eine Datenbank mit Datendateien auf dem `H:` Laufwerk und Protokolldateien auf dem `I:` Laufwerk wiederhergestellt:

```
EXEC msdb.dbo.rds_restore_database    
    @restore_db_name='my_database',
    @s3_arn_to_restore_from='arn:aws:s3:::my-bucket/backup-file.bak',
    @data_file_volume='H:',
    @log_file_volume='I:';
```

Wenn Sie keine Volume-Parameter angeben oder wenn Sie das `D:` Laufwerk für beide Parameter angeben, werden die Datenbankdateien auf dem `D:` Standardlaufwerk wiederhergestellt:

```
EXEC msdb.dbo.rds_restore_database    
    @restore_db_name='my_database',
    @s3_arn_to_restore_from='arn:aws:s3:::my-bucket/backup-file.bak';
```

## Anwendungsfälle für zusätzliche Speichervolumes mit RDS für SQL Server
<a name="SQLServer.ASV.UseCases"></a>

Zusätzliche Speichervolumes unterstützen verschiedene Datenbankverwaltungsszenarien. In den folgenden Abschnitten werden gängige Anwendungsfälle und Implementierungsansätze beschrieben.

**Topics**
+ [Datenbanken auf zusätzlichen Speichervolumes erstellen](#SQLServer.ASV.NewDatabase)
+ [Erweiterung der Speicherkapazität](#SQLServer.ASV.ExtendStorage)
+ [Datenbanken zwischen Volumes verschieben](#SQLServer.ASV.MoveDatabase)
+ [Archivierung von Daten auf kostengünstigem Speicher](#SQLServer.ASV.ArchiveData)

### Datenbanken auf zusätzlichen Speichervolumes erstellen
<a name="SQLServer.ASV.NewDatabase"></a>

Mithilfe von Standard-SQL `CREATE DATABASE` Server-Anweisungen können Sie neue Datenbanken direkt auf zusätzlichen Speichervolumes erstellen.

Im folgenden Beispiel wird eine Datenbank mit Datendateien auf dem `H:` Laufwerk und Protokolldateien auf dem `I:` Laufwerk erstellt:

```
CREATE DATABASE MyDatabase
ON (
    NAME = 'MyDatabase_Data',
    FILENAME = 'H:\rdsdbdata\data\MyDatabase_Data.mdf',
    SIZE = 100MB,
    FILEGROWTH = 10MB
)
LOG ON (
    NAME = 'MyDatabase_Log',
    FILENAME = 'I:\rdsdbdata\data\MyDatabase_Log.ldf',
    SIZE = 10MB,
    FILEGROWTH = 10%
);
```

### Erweiterung der Speicherkapazität
<a name="SQLServer.ASV.ExtendStorage"></a>

Wenn das `D:` Standardlaufwerk seine maximale Kapazität erreicht hat, können Sie zusätzliche Speichervolumes hinzufügen, vorhandene Volumes skalieren und neue Daten- oder Protokolldateien auf den neuen Volumes erstellen.

**Um die Speicherkapazität zu erweitern**

1. Fügen Sie Ihrer Instance mithilfe des `modify-db-instance` Befehls ein Speicher-Volume hinzu.

1. Fügen Sie dem zusätzlichen Speichervolume eine neue Datendatei hinzu:

   ```
   ALTER DATABASE MyDatabase
   ADD FILE (
       NAME = 'MyDatabase_Data2',
       FILENAME = 'H:\rdsdbdata\data\MyDatabase_Data2.ndf',
       SIZE = 500MB,
       FILEGROWTH = 50MB
   );
   ```

### Datenbanken zwischen Volumes verschieben
<a name="SQLServer.ASV.MoveDatabase"></a>

Um eine Datenbank auf ein anderes Volume zu verschieben, verwenden Sie den Sicherungs- und Wiederherstellungsansatz mit den `rds_backup_database` und `rds_restore_database` gespeicherten Prozeduren. Weitere Informationen finden Sie unter [Verwenden nativer Backups und Wiederherstellungen](SQLServer.Procedural.Importing.Native.Using.md).

**Um eine Datenbank auf ein anderes Volume zu verschieben**

1. Erstellen Sie eine Sicherungskopie der Datenbank mit`rds_backup_database`:

   ```
   EXEC msdb.dbo.rds_backup_database 
       @source_db_name='MyDatabase',
       @s3_arn_to_backup_to='arn:aws:s3:::my-bucket/database-backup.bak';
   ```

1. Stellen Sie die Datenbank auf dem Zielvolume wieder her:

   ```
   EXEC msdb.dbo.rds_restore_database    
       @restore_db_name='MyDatabase_New',
       @s3_arn_to_restore_from='arn:aws:s3:::my-bucket/database-backup.bak',
       @data_file_volume='H:',
       @log_file_volume='I:';
   ```

1. Löschen Sie die Datenbank von Ihrem alten Laufwerk, um den Speicherplatz freizugeben. Weitere Informationen finden Sie unter [Verwerfen einer Datenbank in einer DB-Instance in Amazon RDS für Microsoft SQL Server](Appendix.SQLServer.CommonDBATasks.DropMirrorDB.md).

### Archivierung von Daten auf kostengünstigem Speicher
<a name="SQLServer.ASV.ArchiveData"></a>

Bei partitionierten Tabellen können Sie ältere Daten auf zusätzlichen Speichervolumes mit unterschiedlichen Leistungsmerkmalen archivieren.

**Um partitionierte Daten zu archivieren**

1. Fügen Sie ein Speichervolume mit dem entsprechenden Speichertyp und der entsprechenden Kapazität hinzu.

1. Erstellen Sie eine neue Dateigruppe auf dem zusätzlichen Speichervolume:

   ```
   ALTER DATABASE MyDatabase
   ADD FILEGROUP ArchiveFileGroup;
   
   ALTER DATABASE MyDatabase
   ADD FILE (
       NAME = 'Archive_Data',
       FILENAME = 'H:\rdsdbdata\data\Archive_Data.ndf',
       SIZE = 1GB,
       FILEGROWTH = 100MB
   ) TO FILEGROUP ArchiveFileGroup;
   ```

1. Verschieben Sie Partitionen mithilfe von SQL Server-Partitionsverwaltungsbefehlen in die neue Dateigruppe.