

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 Tablespaces in RDS für Oracle
<a name="Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles"></a>

Sie können Tablespaces mit RDS for Oracle verwenden, einer logischen Speichereinheit, die die Daten der Datenbank speichert.

**Wichtig**  
Wenn Ihre DB-Instance über Replikate verfügt, empfehlen wir die Verwendung von Parametergruppeneinstellungen anstelle von Änderungen auf Sitzungsebene, um die Standard-Dateispeicherorte zu verwalten. Änderungen auf Sitzungsebene an den Standard-Dateispeicherorten in der primären Instance werden nicht automatisch in den Replikaten widergespiegelt. Die Verwendung von Parametergruppeneinstellungen gewährleistet konsistente Dateispeicherorte in Ihren Primär- und Replikatinstanzen.

**Topics**
+ [Angabe von Speicherorten für Datenbankdateien in RDS für Oracle](#Appendix.Oracle.CommonDBATasks.DatabaseFileLocations)
+ [Tablespaces in RDS für Oracle erstellen und deren Größe anpassen](#Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles)
+ [Tablespaces auf zusätzlichen Speichervolumes in RDS für Oracle erstellen](#Appendix.Oracle.CommonDBATasks.CreatingTablespacesWithFileLocations)
+ [Den Standard-Tablespace in RDS für Oracle einrichten](#Appendix.Oracle.CommonDBATasks.SettingDefaultTablespace)
+ [Einstellung des standardmäßigen temporären Tablespace in RDS für Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace)
+ [Erstellen eines temporären Tabellenraums im Instance-Speicher](#Appendix.Oracle.CommonDBATasks.creating-tts-instance-store)

## Angabe von Speicherorten für Datenbankdateien in RDS für Oracle
<a name="Appendix.Oracle.CommonDBATasks.DatabaseFileLocations"></a>

RDS for Oracle verwendet Oracle Managed Files (OMF) zur Benennung von Datenbankdateien. Wenn Sie Datenbankdateien erstellen, leitet die Datenbank die Einstellung auf der Grundlage der aktuellen Einstellung des `DB_CREATE_FILE_DEST` Initialisierungsparameters ab.

Der Standardwert des `DB_CREATE_FILE_DEST` Initialisierungsparameters gilt `/rdsdbdata/db` für eigenständige Datenbanken und `/rdsdbdata/db/pdb` für containerisierte (CDB/MT) Architekturen. Wenn Ihre DB-Instance über zusätzliche Speichervolumes verfügt, können Sie diese auf die Speicherorte Ihrer Volumes festlegen. `DB_CREATE_FILE_DEST` Wenn auf Ihrer Instance beispielsweise ein Volume installiert ist`/rdsdbdata/db`, können `DB_CREATE_FILE_DEST` Sie diesen Wert festlegen.

Sie können den `DB_CREATE_FILE_DEST` Parameter entweder auf Sitzungsebene oder auf Ebene der Oracle-Datenbankinstanz ändern.

### Ändern von DB\$1CREATE\$1FILE\$1SET auf Instanzebene
<a name="Appendix.Oracle.CommonDBATasks.InstanceLevelModification"></a>

Um den Parameter auf Instanzebene zu ändern, aktualisieren Sie den Parameter in der Parametergruppe, die Ihrer DB-Instance zugewiesen ist, und wenden Sie ihn an. Weitere Informationen erhalten Sie unter [Initialisierungsparameter für RDS für Oracle](Oracle.Concepts.FeatureSupport.Parameters.md) und [Ändern von Parametern in einer DB-Parametergruppe in Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

### Ändern von DB\$1CREATE\$1FILE\$1DEST auf Sitzungsebene
<a name="Appendix.Oracle.CommonDBATasks.SessionLevelModification"></a>

Sie können den Parameter auf Sitzungsebene ändern, indem Sie eine `ALTER SESSION` Anweisung ausführen. Dieser Ansatz ist nützlich, wenn Sie Datenbankdateien an einem bestimmten Ort für eine bestimmte Sitzung erstellen möchten, ohne dass sich dies auf die gesamte Instanz auswirkt.

Das folgende Beispiel zeigt, wie Sie den aktuellen Parameterwert überprüfen und für die Sitzung ändern können:

```
SHOW PARAMETER db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /rdsdbdata/db

ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.

SHOW PARAMETER db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /rdsdbdata2/db
```

## Tablespaces in RDS für Oracle erstellen und deren Größe anpassen
<a name="Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles"></a>

Wenn Sie Tablespaces erstellen, erstellt die Datenbank die Datendateien auf dem Speichervolume, das durch den `DB_CREATE_FILE_DEST` Initialisierungsparameter zum Zeitpunkt der Erstellung angegeben wurde. Wenn Sie keine Datendateigröße angeben, werden Tabellenbereiche standardmäßig mit der Standardeinstellung `AUTOEXTEND ON` und ohne maximal zulässige Größe erstellt. Im folgenden Beispiel ist der Tablespace *users1* automatisch erweiterbar.

```
CREATE TABLESPACE users1;
```

Durch diese Standardeinstellungen können Tabellenräume so sehr anwachsen, dass sie den gesamten zugewiesenen Speicherplatz verwenden. Wir empfehlen, dass Sie eine angemessene Maximalgröße für permanente und temporäre Tabellenräume festlegen, und dass Sie die Speicherverwendung sorgfältig überwachen. 

Im folgenden Beispiel wird ein Tablespace mit einem Namen *users2* mit einer Startgröße von 1 Gigabyte erstellt. Da zwar die Datendateigröße, nicht aber `AUTOEXTEND ON` angegeben ist, ist der Tabellenbereich nicht automatisch erweiterbar.

```
CREATE TABLESPACE users2 DATAFILE SIZE 1G;
```

Im folgenden Beispiel wird ein Tablespace *users3* mit einer Startgröße von 1 Gigabyte, aktivierter automatischer Erweiterung und einer maximalen Größe von 10 Gigabyte erstellt.

```
CREATE TABLESPACE users3 DATAFILE SIZE 1G AUTOEXTEND ON MAXSIZE 10G;
```

Im folgenden Beispiel wird ein temporärer Tablespace mit dem Namen erstellt. *temp01*

```
CREATE TEMPORARY TABLESPACE temp01;
```

Sie können die Größe eines Tabellenraums mit großen Dateien mithilfe von änder `ALTER TABLESPACE`. Sie können die Größe in Kilobytes (KB), Megabytes (MB), Gigabytes (GB) oder Terabytes (TB) festlegen. Im folgenden Beispiel wird ein Tabellenraum mit dem Namen *users\$1bf* für große Dateien bis 200 MB erstellt.

```
ALTER TABLESPACE users_bf RESIZE 200M;
```

Das folgende Beispiel fügt eine zusätzliche Datendatei zu einem kleinen Datei-Tablespace mit dem Namen hinzu. *users\$1sf*

```
ALTER TABLESPACE users_sf ADD DATAFILE SIZE 100000M AUTOEXTEND ON NEXT 250m MAXSIZE UNLIMITED;
```

## Tablespaces auf zusätzlichen Speichervolumes in RDS für Oracle erstellen
<a name="Appendix.Oracle.CommonDBATasks.CreatingTablespacesWithFileLocations"></a>

Um einen Tablespace auf einem zusätzlichen Speichervolume zu erstellen, ändern Sie den `DB_CREATE_FILE_DEST` Parameter auf den Speicherort des Volumes. Im folgenden Beispiel wird der Dateispeicherort auf `/rdsdbdata2/db` festgelegt.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.
```

Im folgenden Beispiel erstellen Sie einen Tablespace auf dem zusätzlichen Volume`/rdsdbdata2/db`.

```
CREATE TABLESPACE new_tablespace DATAFILE SIZE 10G;

Tablespace created.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'NEW_TABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
NEW_TABLESPACE                     7 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_newtable_a123b4c5_.dbf
```

Um einen Tablespace für kleine Dateien zu erstellen und seine Datendateien auf verschiedene Speichervolumes zu verteilen, fügen Sie dem Tablespace nach der Erstellung Datendateien hinzu. Im folgenden Beispiel erstellen Sie einen Tablespace mit den Datendateien am Standardspeicherort von. `/rdsdbdata/db` Dann setzen Sie das Standardziel auf`/rdsdbdata/db2`. Wenn Sie Ihrem neu erstellten Tablespace eine Datendatei hinzufügen, speichert die Datenbank die Datei in`/rdsdbdata/db2`.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata/db';

Session altered.

CREATE SMALLFILE TABLESPACE smalltbs DATAFILE SIZE 10G;

Tablespace created.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'SMALLTBS';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
SMALLTBS                           8 /rdsdbdata/db/ORCL_A/datafile/o1_mf_smalltbs_n563yryk_.dbf

ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.

ALTER TABLESPACE smalltbs ADD DATAFILE SIZE 10G;

Tablespace altered.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'SMALLTBS';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
SMALLTBS                           8 /rdsdbdata/db/ORCL_A/datafile/o1_mf_smalltbs_n563yryk_.dbf
SMALLTBS                           9 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_smalltbs_n564004g_.dbf
```

## Den Standard-Tablespace in RDS für Oracle einrichten
<a name="Appendix.Oracle.CommonDBATasks.SettingDefaultTablespace"></a>

Um den Standard-Tablespace festzulegen, verwenden Sie die Amazon-RDS-Prozedur `rdsadmin.rdsadmin_util.alter_default_tablespace`. Die Prozedur `alter_default_tablespace` hat die folgenden Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `tablespace_name`  |  varchar  |  —  |  Ja  |  Der Name des Standard-Tabellenraums  | 

Im folgenden Beispiel wird der Standard-Tablespace wie folgt festgelegt: *users2* 

```
EXEC rdsadmin.rdsadmin_util.alter_default_tablespace(tablespace_name => 'users2');
```

## Einstellung des standardmäßigen temporären Tablespace in RDS für Oracle
<a name="Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace"></a>

Um den temporären Standard-Tablespace festzulegen, verwenden Sie die Amazon-RDS-Prozedur `rdsadmin.rdsadmin_util.alter_default_temp_tablespace`. Die Prozedur `alter_default_temp_tablespace` hat die folgenden Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `tablespace_name`  |  varchar  |  —  |  Ja  |  Der Name des temporären Standard-Tabellenraums  | 

Im folgenden Beispiel wird der standardmäßige temporäre Tablespace auf festgelegt. *temp01* 

```
EXEC rdsadmin.rdsadmin_util.alter_default_temp_tablespace(tablespace_name => 'temp01');
```

## Erstellen eines temporären Tabellenraums im Instance-Speicher
<a name="Appendix.Oracle.CommonDBATasks.creating-tts-instance-store"></a>

Wenn Sie einen temporären Tabellenraum im Instance-Speicher erstellen möchten, verwenden Sie das Amazon-RDS-Verfahren `rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace`. Die Prozedur `create_inst_store_tmp_tblspace` hat die folgenden Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar  |  —  |  Ja  |  Der Name des temporären Tabellenraums.  | 

Im folgenden Beispiel wird der temporäre Tablespace *temp01* im Instanzspeicher erstellt. 

```
EXEC rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace(p_tablespace_name => 'temp01');
```

**Wichtig**  
Beim Ausführen von `rdsadmin_util.create_inst_store_tmp_tblspace` wird der neu erstellte temporäre Tabellenraum nicht automatisch als temporärer Standardtabellenraum festgelegt. Informationen zum Festlegen als Standard finden Sie unter [Einstellung des standardmäßigen temporären Tablespace in RDS für Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace).

Weitere Informationen finden Sie unter [Speichern temporärer Daten in einem Instance-Speicher von RDS für Oracle](CHAP_Oracle.advanced-features.instance-store.md).