

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.

# Ausführen allgemeiner Datenbank-Aufgaben für Oracle DB-Instances
<a name="Appendix.Oracle.CommonDBATasks.Database"></a>

Im Folgenden erfahren Sie, wie Sie bestimmte allgemeine DBA-Aufgaben durchführen können, die mit den Datenbanken Ihrer Amazon RDS-DB-Instances in Oracle zusammenhängen. Um eine verwaltete Service-Erfahrung zu bieten, ermöglicht Amazon RDS keinen Shell-Zugriff auf DB-Instances. Amazon RDS schränkt auch den Zugriff auf einige Systemverfahren und Tabellen ein, die erweiterte Berechtigungen erfordern. 

**Topics**
+ [

# Ändern des globalen Namens einer Datenbank
](Appendix.Oracle.CommonDBATasks.RenamingGlobalName.md)
+ [

# Arbeiten mit Tablespaces in RDS für Oracle
](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md)
+ [

# Arbeiten mit Tempfiles in RDS für Oracle
](Appendix.Oracle.CommonDBATasks.using-tempfiles.md)
+ [

# Ändern der Größe von Tablespaces, Datendateien und Tempfiles in RDS for Oracle
](Appendix.Oracle.CommonDBATasks.ResizeTempSpaceReadReplica.md)
+ [

# Verschieben von Daten zwischen Speichervolumes in RDS für Oracle
](Appendix.Oracle.CommonDBATasks.MovingDataBetweenVolumes.md)
+ [

# Arbeiten mit externen Tabellen in RDS for Oracle
](Appendix.Oracle.CommonDBATasks.External_Tables.md)

# Ändern des globalen Namens einer Datenbank
<a name="Appendix.Oracle.CommonDBATasks.RenamingGlobalName"></a>

Um den globalen Namen einer Datenbank zu ändern, verwenden Sie die Amazon RDS-Prozedur `rdsadmin.rdsadmin_util.rename_global_name`. Die Prozedur `rename_global_name` hat die folgenden Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_new_global_name`  |  varchar2  |  —  |  Ja  |  Der neue globale Name für die Datenbank  | 

Die Datenbank muss geöffnet sein, damit die Änderungen übernommen werden. Weitere Informationen über das Ändern des globalen Namens einer Datenbank finden Sie unter [ALTER DATABASE](http://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_1004.htm#SQLRF52547) in der Oracle-Dokumentation. 

Im folgenden Beispiel wird der globale Name einer Datenbank geänder `new_global_name`.

```
EXEC rdsadmin.rdsadmin_util.rename_global_name(p_new_global_name => 'new_global_name');
```

# 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).

# Arbeiten mit Tempfiles in RDS für Oracle
<a name="Appendix.Oracle.CommonDBATasks.using-tempfiles"></a>

## Hinzufügen einer temporären Datei zum Instance-Speicher auf einer Read Replica
<a name="Appendix.Oracle.CommonDBATasks.adding-tempfile-replica"></a>

Wenn Sie einen temporären Tabellenraum auf einer primären DB-Instance erstellen, werden von der Read Replica keine temporären Dateien erstellt. Nehmen Sie an, dass aus einem der folgenden Gründe ein leerer temporärer Tabellenraum in Ihrer Read Replica vorhanden ist:
+ Sie haben eine temporäre Datei aus dem Tabellenraum Ihrer Read Replica gelöscht. Weitere Informationen finden Sie unter [Löschen von temporären Dateien auf einer Read Replica](Appendix.Oracle.CommonDBATasks.dropping-tempfiles-replica.md).
+ Sie haben einen neuen temporären Tabellenraum auf der primären DB-Instance erstellt. In diesem Fall synchronisiert RDS für Oracle die Metadaten mit der Read Replica.

Sie können ein temporäre Datei dem leeren temporären Tabellenraum hinzufügen und die temporäre Dateie im Instance-Speicher ablegen. Wenn Sie eine temporäre Datei im Instance-Speicher erstellen möchten, verwenden Sie das Amazon-RDS-Verfahren `rdsadmin.rdsadmin_util.add_inst_store_tempfile`. Sie können dieses Verfahren nur für eine Read Replica verwenden. Die Prozedur hat die folgenden Parameter.


****  

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

Im folgenden Beispiel ist der leere temporäre Tablespace in Ihrer Read Replica *temp01* vorhanden. Führen Sie den folgenden Befehl aus, um eine temporäre Datei für diesen Tabellenraum zu erstellen und sie im Instance-Speicher abzulegen.

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

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

# Löschen von temporären Dateien auf einer Read Replica
<a name="Appendix.Oracle.CommonDBATasks.dropping-tempfiles-replica"></a>

Sie können einen vorhandenen temporären Tabellenraum auf einer Read Replica nicht löschen. Sie können den Speicher der temporären Datei auf einer Read Replica von Amazon EBS in den Instance-Speicher oder vom Instance-Speicher in Amazon EBS ändern. Gehen Sie wie folgt vor, um diese Ziele zu erreichen:

1. Löschen Sie die aktuellen temporären Dateien im temporären Tabellenraum auf der Read Replica.

1. Erstellen Sie neue temporäre Dateien in einem anderen Speicher.

Wenn Sie die temporären Dateien löschen möchten, verwenden Sie das Amazon-RDS-Verfahren `rdsadmin.rdsadmin_util. drop_replica_tempfiles`. Sie können dieses Verfahren nur für Read Replicas verwenden. Die Prozedur `drop_replica_tempfiles` hat die folgenden Parameter.


****  

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

Gehen Sie davon aus, dass sich ein temporärer Tablespace mit dem *temp01* Namen im Instanzspeicher Ihrer Read Replica befindet. Löschen Sie alle temporären Dateien in diesem Tabellenraum, indem Sie den folgenden Befehl ausführen.

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

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

# Ändern der Größe von Tablespaces, Datendateien und Tempfiles in RDS for Oracle
<a name="Appendix.Oracle.CommonDBATasks.ResizeTempSpaceReadReplica"></a>

Standardmäßig werden Oracle-Tabellenbereiche mit aktivierter automatischen Erweiterbarkeit und ohne Obergrenze für die Größe erstellt. Durch diese Standardeinstellungen können Tabellenbereiche bisweilen zu groß werden. 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.

## Ändern der Größe von permanenten Tabellenbereichen
<a name="resizing-perm-tbs"></a>

Verwenden Sie eines der folgenden Amazon-RDS-Verfahren, um die Größe eines permanenten Tabellenbereichs in einer DB-Instance von RDS für Oracle zu ändern:
+ `rdsadmin.rdsadmin_util.resize_datafile`
+ `rdsadmin.rdsadmin_util.autoextend_datafile`

Die Prozedur `resize_datafile` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_data_file_id`  |  Zahl  |  —  |  Ja  |  Der Bezeichner der Datendatei, deren Größe geändert werden soll.  | 
|  `p_size`  |  varchar2  |  —  |  Ja  |  Die Größe der Datendatei. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an.   | 

Die Prozedur `autoextend_datafile` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_data_file_id`  |  Zahl  |  —  |  Ja  |  Der Bezeichner der Datendatei, deren Größe geändert werden soll.  | 
|  `p_autoextend_state`  |  varchar2  |  —  |  Ja  |  Der Status der automatischen Erweiterungsfunktion. Geben Sie `ON` an, um die Datendatei automatisch erweitern zu lassen, und `OFF`, wenn die automatische Erweiterung deaktiviert werden soll.   | 
|  `p_next`  |  varchar2  |  —  |  Nein  |  Die Größe des nächsten Datendateiinkrements. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an.  | 
|  `p_maxsize`  |  varchar2  |  —  |  Nein  |  Der maximale Festplattenspeicher, der für die automatische Erweiterung zulässig ist. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an. Sie können `UNLIMITED` angeben, um die Dateigrößenbeschränkung aufzuheben.  | 

Im folgenden Beispiel wird die Größe der Datendatei 4 auf 500 MB geändert.

```
EXEC rdsadmin.rdsadmin_util.resize_datafile(4,'500M');
```

Im folgenden Beispiel wird die automatische Erweiterung für die Datendatei 4 deaktiviert. Außerdem wird die automatische Erweiterung für die Datendatei 5 mit einem Inkrement von 128 MB und ohne maximal zulässige Größe aktiviert.

```
EXEC rdsadmin.rdsadmin_util.autoextend_datafile(4,'OFF');
EXEC rdsadmin.rdsadmin_util.autoextend_datafile(5,'ON','128M','UNLIMITED');
```

## Ändern der Größe temporärer Tabellenbereiche
<a name="resizing-temp-tbs"></a>

Verwenden Sie eines der folgenden Amazon-RDS-Verfahren, um die Größe eines temporären Tabellenbereichs in einer DB-Instance von RDS für Oracle, einschließlich eines Lesereplikats, zu ändern:
+ `rdsadmin.rdsadmin_util.resize_temp_tablespace`
+ `rdsadmin.rdsadmin_util.resize_tempfile`
+ `rdsadmin.rdsadmin_util.autoextend_tempfile`

Die Prozedur `resize_temp_tablespace` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_temp_tablespace_name`  |  varchar2  |  —  |  Ja  |  Der Name des temporären Tabellenraums für die Größenanpassung.  | 
|  `p_size`  |  varchar2  |  —  |  Ja  |  Die Größe des Tabellenbereichs. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an.   | 

Die Prozedur `resize_tempfile` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_temp_file_id`  |  Zahl  |  —  |  Ja  |  Die Kennung der temporären Datei, deren Größe geändert werden soll.  | 
|  `p_size`  |  varchar2  |  —  |  Ja  |  Die Größe der temporären Datei. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an.   | 

Die Prozedur `autoextend_tempfile` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
|  `p_temp_file_id`  |  Zahl  |  —  |  Ja  |  Die Kennung der temporären Datei, deren Größe geändert werden soll.  | 
|  `p_autoextend_state`  |  varchar2  |  —  |  Ja  |  Der Status der automatischen Erweiterungsfunktion. Geben Sie `ON` an, um die temporäre Datei automatisch erweitern zu lassen, und `OFF`, wenn die automatische Erweiterung deaktiviert werden soll.   | 
|  `p_next`  |  varchar2  |  —  |  Nein  |  Die Größe des nächsten temporären Dateiinkrements. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an.  | 
|  `p_maxsize`  |  varchar2  |  —  |  Nein  |  Der maximale Festplattenspeicher, der für die automatische Erweiterung zulässig ist. Geben Sie die Größe in Byte (Standard), Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) an. Sie können `UNLIMITED` angeben, um die Dateigrößenbeschränkung aufzuheben.  | 

In den folgenden Beispielen wird die Größe eines temporären Tabellenbereichs mit dem Namen `TEMP` auf 4 GB geändert.

```
EXEC rdsadmin.rdsadmin_util.resize_temp_tablespace('TEMP','4G');
```

```
EXEC rdsadmin.rdsadmin_util.resize_temp_tablespace('TEMP','4096000000');
```

Im folgenden Beispiel wird die Größe eines temporären Tabellenbereichs auf der Grundlage der temporären Datei mit der Datei-ID `1` auf 2 MB geändert.

```
EXEC rdsadmin.rdsadmin_util.resize_tempfile(1,'2M');
```

Im folgenden Beispiel wird die automatische Erweiterung für die temporäre Datei 1 deaktiviert. Außerdem wird die maximale Größe der automatischen Erweiterung der temporären Datei 2 auf 10 GB mit einem Inkrement von 100 MB festgelegt.

```
EXEC rdsadmin.rdsadmin_util.autoextend_tempfile(1,'OFF');
EXEC rdsadmin.rdsadmin_util.autoextend_tempfile(2,'ON','100M','10G');
```

Weitere Informationen zu Lesereplikaten für Oracle-DB-Instances finden Sie unter [Arbeiten mit Lese-Replikaten für Amazon RDS für Oracle](oracle-read-replicas.md).

# Verschieben von Daten zwischen Speichervolumes in RDS für Oracle
<a name="Appendix.Oracle.CommonDBATasks.MovingDataBetweenVolumes"></a>

Sie können Datendateien und Datenbankobjekte zwischen Ihren primären und zusätzlichen Speichervolumes verschieben. Bevor Sie Daten verschieben, sollten Sie die folgenden Punkte berücksichtigen:
+ Das Quell- und das Zielvolume müssen über ausreichend freien Speicherplatz verfügen.
+ Datenverschiebungen I/O beanspruchen beide Volumes.
+ Große Datenbewegungen können sich auf die Datenbankleistung auswirken.
+ Wenn Sie einen Snapshot wiederherstellen, kann das Verschieben von Daten zwischen Speichervolumes langsam sein, wenn dies durch verzögertes EBS-Laden beeinträchtigt wird.

**Topics**
+ [

## Verschieben von Datendateien zwischen Volumes in RDS für Oracle
](#Appendix.Oracle.CommonDBATasks.MovingDatafiles)
+ [

## Verschieben von Tabellendaten und Indizes zwischen Volumes in RDS for Oracle
](#Appendix.Oracle.CommonDBATasks.MovingTableData)
+ [

## Verwaltung von LOB-Speicher mithilfe zusätzlicher Volumes
](#Appendix.Oracle.CommonDBATasks.ManagingLargeLOBStorage)

## Verschieben von Datendateien zwischen Volumes in RDS für Oracle
<a name="Appendix.Oracle.CommonDBATasks.MovingDatafiles"></a>

Verwenden Sie das Amazon RDS-Verfahren, um Datendateien zwischen Speichervolumes zu verschieben`rdsadmin.rdsadmin_util.move_datafile`. Beachten Sie die folgenden Voraussetzungen:
+ Sie müssen Oracle Enterprise Edition verwenden, um das `move_datafile` Verfahren auszuführen.
+ Sie können Tablespace `SYSTEM` und `RDSADMIN` nicht verschieben.

Die Prozedur `move_datafile` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | 
|  `p_data_file_id`  |  Zahl  |  Ja  |  Die ID der Datendatei, die verschoben werden soll.  | 
|  `p_location`  |  varchar2  |  Ja  |  Das Speichervolume, auf das Sie die Datendatei verschieben möchten.  | 

Im folgenden Beispiel wird ein Tablespace vom Standardvolume `rdsdbdata` auf das zusätzliche Volume `rdsdbdata2` verschoben.

```
SQL> SELECT tablespace_name,file_id,file_name FROM dba_data_files
 WHERE tablespace_name = 'MYNEWTABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
MYNEWTABLESPACE                    6 /rdsdbdata/db/ORCL_A/datafile/o1_mf_mynewtab_n123abcd_.dbf

EXECUTE rdsadmin.rdsadmin_util.move_datafile( 6, 'rdsdbdata2');

PL/SQL procedure successfully completed.

SQL> SELECT tablespace_name,file_id,file_name FROM dba_data_files
  WHERE tablespace_name = 'MYNEWTABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
MYNEWTABLESPACE                    6 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_mynewtab_n356efgh_.dbf
```

## Verschieben von Tabellendaten und Indizes zwischen Volumes in RDS for Oracle
<a name="Appendix.Oracle.CommonDBATasks.MovingTableData"></a>

Sie können den Datenbankspeicher optimieren, indem Sie Tablespaces auf zusätzlichen Speichervolumes erstellen. Anschließend können Sie Objekte wie Tabellen, Indizes und Partitionen mithilfe von Oracle-Standard-SQL in diese Tablespaces verschieben. Dieser Ansatz ist nützlich für die Leistungsoptimierung, wenn Ihre Datenbank Daten mit unterschiedlichen Zugriffsmustern enthält. Sie könnten beispielsweise häufig abgerufene Betriebsdaten auf Hochleistungsspeichervolumes speichern und gleichzeitig historische Daten, auf die selten zugegriffen wird, auf kostengünstigere Speichervolumes verschieben.

Im folgenden Beispiel erstellen Sie einen neuen Tablespace auf einem Hochleistungsvolume. `rdsdbdata2` Anschließend verschieben Sie eine Tabelle auf Ihr zusätzliches Speichervolume, solange die Tabelle online ist. Außerdem verschieben Sie den Index auf dasselbe Volume. Für das Verschieben von Tabellen und das Neuerstellen von Indizes, während Sie online sind, ist Oracle Enterprise Edition erforderlich.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';
CREATE TABLESPACE perf_tbs DATAFILE SIZE 10G;

ALTER TABLE employees
  MOVE TABLESPACE perf_tbs ONLINE;

ALTER INDEX employees_idx
  REBUILD ONLINE TABLESPACE perf_tbs;
```

Im folgenden Beispiel erstellen Sie einen Tablespace auf einem kostengünstigen Volume. Anschließend verschieben Sie mithilfe eines Online-Vorgangs eine Tabellenpartition auf Ihr kostengünstiges Speichervolume.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata3/db';
CREATE TABLESPACE hist_tbs DATAFILE SIZE 10G;

ALTER TABLE orders
  MOVE PARTITION orders_2022
  TABLESPACE hist_tbs ONLINE;
```

Im folgenden Beispiel fragen Sie aktive Sitzungen und lange Operationen ab.

```
SELECT sid,opname,sofar,totalwork,time_remaining,elapsed_seconds 
  FROM v$session_longops 
  WHERE time_remaining > 0;
```

Sie können die Nutzung Ihrer Tablespaces mit der folgenden Abfrage überprüfen.

```
SELECT tablespace_name, used_percent
  FROM dba_tablespace_usage_metrics
  ORDER BY used_percent DESC;
```

## Verwaltung von LOB-Speicher mithilfe zusätzlicher Volumes
<a name="Appendix.Oracle.CommonDBATasks.ManagingLargeLOBStorage"></a>

Ihre Datenbank enthält möglicherweise Tabellen mit BLOB- oder CLOB-Objekten, die viel Speicherplatz beanspruchen, auf die jedoch selten zugegriffen wird. Um den Speicher zu optimieren, können Sie diese LOB-Segmente in einen Tablespace auf einem zusätzlichen Speichervolume verlagern.

Im folgenden Beispiel erstellen Sie einen Tablespace für LOB-Daten auf einem kostengünstigen Volume, das für Daten mit geringem Zugriff vorgesehen ist. Anschließend erstellen Sie eine Tabelle, in der Daten auf diesem Volume gespeichert werden.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata3/db';
CREATE TABLESPACE lob_data DATAFILE SIZE 5G AUTOEXTEND ON NEXT 1G;

CREATE TABLE documents (
    doc_id NUMBER PRIMARY KEY,
    doc_date DATE,
    doc_content CLOB
) TABLESPACE user_data
LOB(doc_content) STORE AS (TABLESPACE lob_data);
```

# Arbeiten mit externen Tabellen in RDS for Oracle
<a name="Appendix.Oracle.CommonDBATasks.External_Tables"></a>

*Externe Oracle-Tabellen *sind Tabellen mit Daten, die sich nicht in der Datenbank befinden. Stattdessen befinden sich die Daten in externen Dateien, auf die die Datenbank zugreifen kann. Durch die Verwendung externer Tabellen können Sie auf die Daten zugreifen, ohne sie in die Datenbank zu laden. Weitere Informationen zu externen Tabellen finden Sie unter [Managing External Tables](http://docs.oracle.com/database/121/ADMIN/tables.htm#ADMIN01507) in der Oracle-Dokumentation. 

Mit Amazon RDS können Sie externe Tabellendateien in Verzeichnisobjekten speichern. Sie können ein Verzeichnisobjekt erstellen oder eines verwenden, das in der Oracle-Datenbank vordefiniert ist, z. B. das Verzeichnis DATA\$1PUMP\$1DIR. Weitere Informationen zum Erstellen von Verzeichnisobjekten finden Sie unter [Erstellen und Löschen von Verzeichnissen im Hauptdatenspeicherbereich](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.NewDirectories). Sie können die Ansicht ALL\$1DIRECTORIES abfragen, um die Verzeichnisobjekte für Ihre Amazon RDS Oracle DB-Instance aufzulisten.

**Anmerkung**  
Verzeichnisobjekte zeigen auf den von Ihrer Instance verwendeten Datenspeicherplatz (Amazon EBS-Volume). Der belegte Speicherplatz – mit Datendateien, Redo-Logs, Audit- und Nachverfolgungsdateien sowie anderen Dateien – wird auf den zugewiesenen Speicherplatz angerechnet.

Sie verschieben eine externe Datendatei von einer Oracle-Datenbank in eine andere Datenbank, indem Sie das Paket [ DBMS\$1FILE\$1TRANSFER](https://docs.oracle.com/database/121/ARPLS/d_ftran.htm#ARPLS095) oder das Paket [UTL\$1FILE](https://docs.oracle.com/database/121/ARPLS/u_file.htm#ARPLS069) verwenden. Die externe Datendatei wird von einem Verzeichnis auf der Quelldatenbank in das angegebene Verzeichnis auf der Zieldatenbank verschoben. Für weitere Informationen zur Nutzung von `DBMS_FILE_TRANSFER` siehe [Importieren mit Oracle Data Pump](Oracle.Procedural.Importing.DataPump.md).

Nachdem Sie die externe Datendatei verschoben haben, können Sie damit eine externe Tabelle anlegen. Im folgenden Beispiel wird eine externe Tabelle erstellt, die die `emp_xt_file1.txt` Datei im DIR1 Verzeichnis USER\$1 verwendet.

```
CREATE TABLE emp_xt (
  emp_id      NUMBER,
  first_name  VARCHAR2(50),
  last_name   VARCHAR2(50),
  user_name   VARCHAR2(20)
)
ORGANIZATION EXTERNAL (
  TYPE ORACLE_LOADER
  DEFAULT DIRECTORY USER_DIR1
  ACCESS PARAMETERS (
    RECORDS DELIMITED BY NEWLINE
    FIELDS TERMINATED BY ','
    MISSING FIELD VALUES ARE NULL
    (emp_id,first_name,last_name,user_name)
  )
  LOCATION ('emp_xt_file1.txt')
)
PARALLEL
REJECT LIMIT UNLIMITED;
```

Angenommen, Sie möchten Daten, die sich in einer Amazon RDS Oracle DB-Instance befinden, in eine externe Datendatei verschieben. In diesem Fall können Sie die externe Datendatei füllen, indem Sie eine externe Tabelle anlegen und die Daten aus der Tabelle in der Datenbank auswählen. Die folgende SQL-Anweisung erzeugt z. B. die externe Tabelle `orders_xt` durch Abfrage der Tabelle `orders` in der Datenbank.

```
CREATE TABLE orders_xt
  ORGANIZATION EXTERNAL
   (
     TYPE ORACLE_DATAPUMP
     DEFAULT DIRECTORY DATA_PUMP_DIR
     LOCATION ('orders_xt.dmp')
   )
   AS SELECT * FROM orders;
```

In diesem Beispiel werden die Daten in der Datei `orders_xt.dmp` im Verzeichnis DATA\$1PUMP\$1DIR gefüllt.