

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 verschiedener Aufgaben für Oracle-DB-Instances
<a name="Appendix.Oracle.CommonDBATasks.Misc"></a>

Im Folgenden erfahren Sie, wie Sie verschiedene DBA-Aufgaben für Ihre Amazon-RDS-DB-Instances, auf denen Oracle ausgeführt wird, durchführen können. Um eine verwaltete Service-Erfahrung zu bieten, stellt Amazon RDS keinen Shell-Zugriff zu DB-Instances bereit und beschränkt den Zugriff auf bestimmte Systemprozeduren und -tabellen, die erweiterte Sonderrechte erfordern. 

**Topics**
+ [Erstellen und Löschen von Verzeichnissen im Hauptdatenspeicherbereich](#Appendix.Oracle.CommonDBATasks.NewDirectories)
+ [Auflisten von Dateien in einem DB-Instance-Verzeichnis](#Appendix.Oracle.CommonDBATasks.ListDirectories)
+ [Lesen von Dateien in einem DB-Instance-Verzeichnis](#Appendix.Oracle.CommonDBATasks.ReadingFiles)
+ [Zugreifen auf Opatch-Dateien](#Appendix.Oracle.CommonDBATasks.accessing-opatch-files)
+ [Verwalten von Berateraufgaben](#Appendix.Oracle.CommonDBATasks.managing-advisor-tasks)
+ [Transport von Tabellenbereichen](rdsadmin_transport_util.md)

## Erstellen und Löschen von Verzeichnissen im Hauptdatenspeicherbereich
<a name="Appendix.Oracle.CommonDBATasks.NewDirectories"></a>

Um die Dateien in einem Verzeichnis aufzulisten, verwenden Sie die Amazon-RDS-Prozedur `rdsadmin.rdsadmin_util.create_directory`. Sie können bis zu 10 000 Verzeichnisse erstellen, die sich alle in Ihrem Hauptdatenspeicherplatz befinden. Um Verzeichnisse zu entfernen, verwenden Sie die Amazon-RDS-Prozedur `rdsadmin.rdsadmin_util.drop_directory`.

Die Prozeduren `create_directory` und `drop_directory` haben den folgenden erforderlichen Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
| `p_directory_name` | VARCHAR2 | — | Ja | Der Name des Verzeichnisses | 

Im folgenden Beispiel wird ein neues Verzeichnis mit dem Namen erstell `PRODUCT_DESCRIPTIONS`. 

```
EXEC rdsadmin.rdsadmin_util.create_directory(p_directory_name => 'product_descriptions');
```

Das Datenwörterbuch speichert den Verzeichnisnamen in Großbuchstaben. Sie können die Verzeichnisse durch das Abfragen von auflisten lasse `DBA_DIRECTORIES`. Das System wählt den tatsächlichen Host-Pfadnamen automatisch aus. Im folgenden Beispiel wird der Verzeichnispfad für das Verzeichnis mit dem Namen erhalte `PRODUCT_DESCRIPTIONS`: 

```
SELECT DIRECTORY_PATH 
  FROM DBA_DIRECTORIES 
 WHERE DIRECTORY_NAME='PRODUCT_DESCRIPTIONS';
        
DIRECTORY_PATH
----------------------------------------
/rdsdbdata/userdirs/01
```

Der Hauptbenutzername für die DB-Instance hat Lese- und Schreibsonderrechte im neuen Verzeichnis und kann anderen Benutzern Zugriff gewähren. `EXECUTE`-Sonderrechte sind für die Verzeichnisse in einer DB-Instance nicht verfügbar. Verzeichnisse werden in Ihrem Hauptdatenspeicher erstellt und verbrauchen Speicherplatz und I/O Bandbreite. 

Im folgenden Beispiel wird das Verzeichnis mit dem Namen „“ entfern `PRODUCT_DESCRIPTIONS`. 

```
EXEC rdsadmin.rdsadmin_util.drop_directory(p_directory_name => 'product_descriptions');
```

**Anmerkung**  
Sie können ein Verzeichnis auch löschen, indem Sie den Oracle SQL-Befehl verwende `DROP DIRECTORY`. 

Das Verwerfen eines Verzeichnisses entfernt nicht seine Inhalte. Da die Prozedur „`rdsadmin.rdsadmin_util.create_directory`“ Pfadnamen wiederverwenden kann, werden in Verzeichnissen verworfene Dateien in einem neu erstellten Verzeichnis wieder auftauchen. Bevor Sie ein Verzeichnis löschen, wird empfohlen, Dateien mit `UTL_FILE.FREMOVE` aus dem Verzeichnis zu entfernen. Weitere Informationen finden Sie unter [FREMOVE Procedure](https://docs.oracle.com/database/121/ARPLS/u_file.htm#ARPLS70924) in der Oracle-Dokumentation.

## Auflisten von Dateien in einem DB-Instance-Verzeichnis
<a name="Appendix.Oracle.CommonDBATasks.ListDirectories"></a>

Um die Dateien in einem Verzeichnis aufzulisten, verwenden Sie die Amazon-RDS-Prozedur `rdsadmin.rds_file_util.listdir`. Dieses Verfahren wird auf einem Oracle-Replikat nicht unterstützt. Die Prozedur `listdir` hat die folgenden Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
| `p_directory` | varchar2 | — | Ja | Der Name des aufzulistenden Verzeichnisses | 

Das folgende Beispiel gewährt dem Benutzer read/write `rdsadmin` Rechte `PRODUCT_DESCRIPTIONS` für das Verzeichnis und listet dann die Dateien in diesem Verzeichnis auf. 

```
GRANT READ,WRITE ON DIRECTORY PRODUCT_DESCRIPTIONS TO rdsadmin;
SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir(p_directory => 'PRODUCT_DESCRIPTIONS'));
```

## Lesen von Dateien in einem DB-Instance-Verzeichnis
<a name="Appendix.Oracle.CommonDBATasks.ReadingFiles"></a>

Um eine Textdatei zu lesen, verwenden Sie die Amazon-RDS-Prozedur `rdsadmin.rds_file_util.read_text_file`. Die Prozedur `read_text_file` hat die folgenden Parameter. 


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
| `p_directory` | varchar2 | — | Ja | Der Verzeichnisname der die Datei beinhaltet | 
| `p_filename` | varchar2 | — | Ja | Der Name der zu lesenden Datei | 

Im folgenden Beispiel wird die Datei `rice.txt` im Verzeichnis `PRODUCT_DESCRIPTIONS` erstellt. 

```
declare
  fh sys.utl_file.file_type;
begin
  fh := utl_file.fopen(location=>'PRODUCT_DESCRIPTIONS', filename=>'rice.txt', open_mode=>'w');
  utl_file.put(file=>fh, buffer=>'AnyCompany brown rice, 15 lbs');
  utl_file.fclose(file=>fh);
end;
/
```

Im folgenden Beispiel wird die Datei `rice.txt` aus dem Verzeichnis `PRODUCT_DESCRIPTIONS` gelesen. 

```
SELECT * FROM TABLE
    (rdsadmin.rds_file_util.read_text_file(
        p_directory => 'PRODUCT_DESCRIPTIONS',
        p_filename  => 'rice.txt'));
```

## Zugreifen auf Opatch-Dateien
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files"></a>

Opatch ist ein Oracle-Dienstprogramm, das die Anwendung und das Rollback von Patches auf Oracle-Software ermöglicht. Die Oracle-Methode, mit der bestimmt wird, welche Patches auf eine Datenbank angewendet wurden, ist der Befehl `opatch lsinventory`. Um Serviceanfragen für Kunden mit Bring Your Own License (BYOL) zu öffnen, fordert Oracle Support die `lsinventory`-Datei und manchmal die von Opatch generierte `lsinventory_detail`-Datei an.

Um eine verwaltete Service-Erfahrung zu bieten, ermöglicht Amazon RDS keinen Shell-Zugriff auf Opatch. Stattdessen enthält die Datei `lsinventory-{{dbv}}.txt` im BDUMP-Verzeichnis die Patch-Informationen zu Ihrer aktuellen Engine-Version. Wenn Sie ein Upgrade der Neben- oder Hauptversion durchführen, aktualisiert Amazon RDS `lsinventory-{{dbv}}.txt` innerhalb einer Stunde nach Patch-Anwendung. Informationen zur Überprüfung der angewendeten Patches finden Sie in der `lsinventory-{{dbv}}.txt`. Diese Aktion entspricht der Ausführung des Befehls `opatch lsinventory`.

**Anmerkung**  
In den Beispielen in diesem Abschnitt wird davon ausgegangen, dass das BDUMP-Verzeichnis als benannt is `BDUMP`. Bei einem Lesereplikat unterscheidet sich der Name des BDUMP-Verzeichnisses. Informationen zum Abrufen des BDUMP-Namens durch Abfragen von `V$DATABASE.DB_UNIQUE_NAME` auf einem Lesereplikat finden Sie unter [Auflisten von Dateien](USER_LogAccess.Concepts.Oracle.md#USER_LogAccess.Concepts.Oracle.WorkingWithTracefiles.ViewingBackgroundDumpDest).

Die Inventardateien verwenden die Amazon RDS-Namenskonvention `lsinventory-{{dbv}}.txt` und`lsinventory_detail-{{dbv}}.txt`, wo {{dbv}} ist der vollständige Name Ihrer DB-Version. Die Datei `lsinventory-{{dbv}}.txt` ist auf allen DB-Versionen verfügbar. Die entsprechende Version `lsinventory_detail-{{dbv}}.txt` ist auf 19.0.0.0, ru-2020-01.r1 oder höher verfügbar.

Wenn Ihre DB-Version beispielsweise 19.0.0.0.ru-2021-07.rur-2021-07.r1 ist, haben die Bestandsdateien die folgenden Namen.

```
lsinventory-19.0.0.0.ru-2021-07.rur-2021-07.r1.txt
lsinventory_detail-19.0.0.0.ru-2021-07.rur-2021-07.r1.txt
```

Stellen Sie sicher, dass Sie die Dateien herunterladen, die mit der aktuellen Version Ihrer DB-Engine übereinstimmen.

### Konsole
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files.console"></a>

**So laden Sie eine Bestandsdatei über die Konsole herunter**

1. Ö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 **Databases (Datenbanken)** aus.

1. Wählen Sie den Namen der DB-Instance, welche die anzuzeigende Protokolldatei enthält.

1. Wählen Sie die Registerkarte **Logs & events** (Protokolle und Ereignisse).

1. Scrollen Sie nach unten bis zum Abschnitt **Protokolle**.

1. Suchen Sie im Abschnitt **Protokolle** nach `lsinventory`.

1. Wählen Sie die Datei aus, auf die Sie zugreifen möchten, und klicken Sie dann auf **Herunterladen**.

### SQL
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files.sql"></a>

Zum Lesen der `lsinventory-{{dbv}}.txt` auf einem SQL-Client können Sie eine `SELECT`-Anweisung verwenden. Für diese Methode verwenden Sie eine der folgenden `rdsadmin`-Funktionen: `rdsadmin.rds_file_util.read_text_file` oder `rdsadmin.tracefile_listing`.

Ersetzen Sie in der folgenden Beispielabfrage {{dbv}} durch Ihre Oracle-DB-Version. Ihre DB-Version könnte beispielsweise 19.0.0.0.ru-2020-04.rur-2020-04.r1 sein.

```
SELECT text
FROM   TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'lsinventory-{{dbv}}.txt'));
```

### PL/SQL
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files.plsql"></a>

Um das `lsinventory-{{dbv}}.txt` in einem SQL-Client zu lesen, können Sie ein PL/SQL Programm schreiben. Dieses Programm verwendet `utl_file`, um die Datei zu lesen, und `dbms_output`, um sie zu drucken. Das sind Oracle-supplied Pakete. 

Ersetzen Sie es im folgenden Beispielprogramm {{dbv}} durch Ihre Oracle-DB-Version. Ihre DB-Version könnte beispielsweise 19.0.0.0.ru-2020-04.rur-2020-04.r1 sein.

```
SET SERVEROUTPUT ON
DECLARE
  v_file              SYS.UTL_FILE.FILE_TYPE;
  v_line              VARCHAR2(1000);
  v_oracle_home_type  VARCHAR2(1000);
  c_directory         VARCHAR2(30) := 'BDUMP';
  c_output_file       VARCHAR2(30) := 'lsinventory-{{dbv}}.txt';
BEGIN
  v_file := SYS.UTL_FILE.FOPEN(c_directory, c_output_file, 'r');
  LOOP
    BEGIN
      SYS.UTL_FILE.GET_LINE(v_file, v_line,1000);
      DBMS_OUTPUT.PUT_LINE(v_line);
    EXCEPTION
      WHEN no_data_found THEN
        EXIT;
    END;
  END LOOP;
END;
/
```

Oder fragen Sie `rdsadmin.tracefile_listing` ab und spoolen Sie die Ausgabe in eine Datei. Im folgenden Beispiel wird die Ausgabe in gespool `/tmp/tracefile.txt`.

```
SPOOL /tmp/tracefile.txt
SELECT * 
FROM   rdsadmin.tracefile_listing 
WHERE  FILENAME LIKE 'lsinventory%';
SPOOL OFF;
```

## Verwalten von Berateraufgaben
<a name="Appendix.Oracle.CommonDBATasks.managing-advisor-tasks"></a>

Oracle Database enthält eine Reihe von Beratern. Jeder Berater unterstützt automatisierte und manuelle Aufgaben. Sie können Prozeduren im `rdsadmin.rdsadmin_util`-Paket zur Verwaltung einiger Berateraufgaben verwenden.

Die Prozesse der Berateraufgaben sind in den folgenden Engine-Versionen verfügbar:
+ Oracle Database 21c (21.0.0)
+ Version 19.0.0.0.ru-2021-01.rur-2021-01.r1 und höhere Versionen von Oracle Database 19c 

  Weitere Informationen finden Sie unter [Version 19.0.0.0.ru-2021-01.rur-2021-01.r1](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2021-01.rur-2021-01.r1) in den *Versionshinweisen zu Amazon RDS für Oracle*.

**Topics**
+ [Festlegen von Parametern für Berateraufgaben](#Appendix.Oracle.CommonDBATasks.setting-task-parameters)
+ [Deaktivieren von AUTO\_STATS\_ADVISOR\_TASK](#Appendix.Oracle.CommonDBATasks.dropping-advisor-task)
+ [Re-enabling AUTO\_STATS\_ADVISOR\_TASK](#Appendix.Oracle.CommonDBATasks.recreating-advisor-task)

### Festlegen von Parametern für Berateraufgaben
<a name="Appendix.Oracle.CommonDBATasks.setting-task-parameters"></a>

Um Parameter für einige Berateraufgaben festzulegen, verwenden Sie das Amazon-RDS-Verfahren `rdsadmin.rdsadmin_util.advisor_task_set_parameter`. Die Prozedur `advisor_task_set_parameter` hat die folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
| `p_task_name` | varchar2 | — | Ja | Der Name der Berateraufgabe, deren Parameter Sie ändern möchten. Die folgenden Werte sind gültig:[See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.Misc.html) | 
| `p_parameter` | varchar2 | — | Ja | Der Name des Aufgaben-Parameters. Um gültige Parameter für eine Berateraufgabe zu finden, führen Sie die folgende Abfrage aus. {{p\_task\_name}}Ersetzen Sie durch einen gültigen Wert für`p_task_name`:<pre>COL PARAMETER_NAME FORMAT a30<br />COL PARAMETER_VALUE FORMAT a30<br />SELECT PARAMETER_NAME, PARAMETER_VALUE<br />FROM DBA_ADVISOR_PARAMETERS<br />WHERE TASK_NAME='{{p_task_name}}'<br />AND PARAMETER_VALUE != 'UNUSED'<br />ORDER BY PARAMETER_NAME;</pre> | 
| `p_value` | varchar2 | — | Ja | Der Wert für einen Aufgabenparameter. Um gültige Werte für Aufgabenparameter zu finden, führen Sie die folgende Abfrage aus. Ersetze {{p\_task\_name}} durch einen gültigen Wert für`p_task_name`:<pre>COL PARAMETER_NAME FORMAT a30<br />COL PARAMETER_VALUE FORMAT a30<br />SELECT PARAMETER_NAME, PARAMETER_VALUE<br />FROM DBA_ADVISOR_PARAMETERS<br />WHERE TASK_NAME='{{p_task_name}}'<br />AND PARAMETER_VALUE != 'UNUSED'<br />ORDER BY PARAMETER_NAME;</pre> | 

Das folgende PL/SQL Programm setzt `ACCEPT_PLANS` auf `FALSE` for`SYS_AUTO_SPM_EVOLVE_TASK`. Die automatisierte Aufgabe „SQL-Planverwaltung“ überprüft die Pläne und erstellt einen Bericht über ihre Ergebnisse, entwickelt die Pläne jedoch nicht automatisch weiter. Sie können einen Bericht verwenden, um neue SQL-Plan-Baselines zu identifizieren und sie manuell zu akzeptieren.

```
BEGIN 
  rdsadmin.rdsadmin_util.advisor_task_set_parameter(
    p_task_name => 'SYS_AUTO_SPM_EVOLVE_TASK',
    p_parameter => 'ACCEPT_PLANS',
    p_value     => 'FALSE');
END;
```

Das folgende PL/SQL Programm setzt `EXECUTION_DAYS_TO_EXPIRE` auf `10` for`AUTO_STATS_ADVISOR_TASK`. Die vordefinierte Aufgabe `AUTO_STATS_ADVISOR_TASK` läuft automatisch einmal täglich im Wartungsfenster. Im Beispiel wird der Aufbewahrungszeitraum für die Aufgabenausführung auf 10 Tage festgelegt. 

```
BEGIN 
  rdsadmin.rdsadmin_util.advisor_task_set_parameter(
    p_task_name => 'AUTO_STATS_ADVISOR_TASK',
    p_parameter => 'EXECUTION_DAYS_TO_EXPIRE',
    p_value     => '10');
END;
```

### Deaktivieren von AUTO\_STATS\_ADVISOR\_TASK
<a name="Appendix.Oracle.CommonDBATasks.dropping-advisor-task"></a>

Um `AUTO_STATS_ADVISOR_TASK` zu deaktivieren, verwenden Sie das Amazon-RDS-Verfahren `rdsadmin.rdsadmin_util.advisor_task_drop`. Das `advisor_task_drop`-Verfahren akzeptiert den folgenden Parameter.


****  

| Parametername | Datentyp | Standard | Erforderlich | Beschreibung | 
| --- | --- | --- | --- | --- | 
| `p_task_name` | varchar2 | — | Ja | Der Name der Berateraufgabe, die deaktiviert werden soll. Der einzige gültige Wert ist `AUTO_STATS_ADVISOR_TASK`. | 

Der folgenden Befehl wird verworfen: `AUTO_STATS_ADVISOR_TASK`.

```
EXEC rdsadmin.rdsadmin_util.advisor_task_drop('AUTO_STATS_ADVISOR_TASK')
```

Sie können `AUTO_STATS_ADVISOR_TASK` unter Verwendung von `rdsadmin.rdsadmin_util.dbms_stats_init` erneut aktivieren.

### Re-enabling AUTO\_STATS\_ADVISOR\_TASK
<a name="Appendix.Oracle.CommonDBATasks.recreating-advisor-task"></a>

Um `AUTO_STATS_ADVISOR_TASK` wieder zu aktivieren, verwenden Sie das Amazon-RDS-Verfahren `rdsadmin.rdsadmin_util.dbms_stats_init`. Die `dbms_stats_init`-Prozedur verwendet keine Parameter.

Der folgende Befehl reaktiviert `AUTO_STATS_ADVISOR_TASK`.

```
EXEC rdsadmin.rdsadmin_util.dbms_stats_init()
```