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.
Behebung von DB-Problemen für Amazon RDS Custom for Oracle
Das Modell der gemeinsamen Verantwortung von RDS Custom bietet Zugriff auf Betriebssystem-Shell-Ebene und Datenbankadministratorzugriff. RDS Custom führt Ressourcen in Ihrem Konto aus, im Gegensatz zu AmazonRDS, das Ressourcen in einem Systemkonto ausführt. Mit einem größeren Zugang kommt eine größere Verantwortung mit sich. In den folgenden Abschnitten erfahren Sie, wie Sie Probleme mit Amazon RDS Custom DB-Instances beheben können.
Anmerkung
In diesem Abschnitt wird erklärt, wie Sie RDS Custom for Oracle beheben können. Informationen zur Fehlerbehebung bei RDS Custom for SQL Server finden Sie unterBeheben von DB-Problemen für Amazon RDS Custom for SDL Server.
Themen
RDSBenutzerdefinierte Ereignisse anzeigen
Das Verfahren zum Anzeigen von Ereignissen ist für RDS benutzerdefinierte und RDS Amazon-DB-Instances identisch. Weitere Informationen finden Sie unter RDSAmazon-Ereignisse anzeigen.
Verwenden Sie den describe-events
Befehl AWS CLI, um RDS benutzerdefinierte Ereignisbenachrichtigungen mit dem anzuzeigen. RDS Custom führt mehrere neue Ereignisse ein. Die Veranstaltungskategorien sind dieselben wie bei AmazonRDS. Eine Liste der Ereignisse finden Sie unter Amazon RDS-Ereigniskategorien und Ereignisnachrichten .
Im folgenden Beispiel werden Details zu den Ereignissen abgerufen, die für die angegebene RDS benutzerdefinierte DB-Instance aufgetreten sind.
aws rds describe-events \ --source-identifier my-custom-instance \ --source-type db-instance
Benutzerdefinierte Ereignisse abonnieren RDS
Das Verfahren zum Abonnieren von Ereignissen ist für RDS benutzerdefinierte DB-Instances und RDS Amazon-DB-Instances identisch. Weitere Informationen finden Sie unter RDSAmazon-Veranstaltungsbenachrichtigung abonnieren.
Verwenden Sie den create-event-subscription
Befehl, um RDS benutzerdefinierte Ereignisbenachrichtigungen mit dem CLI zu abonnieren. Nutzen Sie die folgenden erforderlichen Parameter:
-
--subscription-name
-
--sns-topic-arn
Im folgenden Beispiel wird ein Abonnement für Sicherungs- und Wiederherstellungsereignisse für eine RDS benutzerdefinierte DB-Instance im aktuellen AWS
Konto erstellt. Benachrichtigungen werden an ein Amazon Simple Notification Service (AmazonSNS) -Thema gesendet, das von spezifiziert ist--sns-topic-arn
.
aws rds create-event-subscription \ --subscription-name my-instance-events \ --source-type db-instance \ --event-categories '["backup","recovery"]' \ --sns-topic-arn arn:aws:sns:us-east-1:123456789012:interesting-events
Problembehandlung bei der Erstellung einer benutzerdefinierten Engine-Version für RDS Custom for Oracle
Wenn die CEV Erstellung fehlschlägt, gibt RDS Custom einen Fehler RDS-EVENT-0198
mit der Nachricht Creation failed for custom engine
version
aus und enthält Informationen zum Fehler. Zum Beispiel druckt das Ereignis fehlende Dateien.major-engine-version.cev_name
CEVDie Erstellung schlägt möglicherweise aufgrund der folgenden Probleme fehl:
-
Der Amazon S3 S3-Bucket, der Ihre Installationsdateien enthält, befindet sich nicht in derselben AWS Region wie IhrCEV.
-
Wenn Sie AWS-Region zum ersten Mal die CEV Erstellung in einem anfordern, erstellt RDS Custom einen S3-Bucket zum Speichern von RDS benutzerdefinierten Ressourcen (wie CEV Artefakten, AWS CloudTrail Protokollen und Transaktionsprotokollen).
CEVDie Erstellung schlägt fehl, wenn RDS Custom den S3-Bucket nicht erstellen kann. Entweder hat der Anrufer keine S3-Berechtigungen wie unter Schritt 5: Erteilen Sie Ihrem IAM-Benutzer oder Ihrer IAM-Rolle die erforderlichen Berechtigungen oder die Anzahl der S3-Buckets hat das Limit erreicht.
-
Der Anrufer hat keine Berechtigung, Dateien aus Ihrem S3-Bucket abzurufen, der die Installationsmediendateien enthält. Diese Berechtigungen sind unter Schritt 7: Fügen Sie die erforderlichen IAM Berechtigungen hinzu beschrieben.
-
Ihre IAM Richtlinie ist an eine
aws:SourceIp
Bedingung geknüpft. Befolgen Sie unbedingt die Empfehlungen unter AWS verweigert Zugriff auf AWS basierend auf der Quell-IP im AWS Identity and Access Management -Benutzerhandbuch. Stellen Sie außerdem sicher, dass der Aufrufer über die S3-Berechtigungen verfügt, die unter Schritt 5: Erteilen Sie Ihrem IAM-Benutzer oder Ihrer IAM-Rolle die erforderlichen Berechtigungen beschrieben sind. -
Die im CEV Manifest aufgeführten Installationsmediendateien befinden sich nicht in Ihrem S3-Bucket.
-
Die SHA -256-Prüfsummen der Installationsdateien sind Custom unbekannt. RDS
Vergewissern Sie sich, dass die SHA -256-Prüfsummen der bereitgestellten Dateien mit der SHA -256-Prüfsumme auf der Oracle-Website übereinstimmen. Wenn die Prüfsummen übereinstimmen, wenden Sie sich an den AWS Support
und geben Sie den CEV Namen, den Dateinamen und die Prüfsumme des Fehlers an. -
Die OPatch Version ist nicht mit Ihren Patch-Dateien kompatibel. Möglicherweise wird die folgende Meldung angezeigt:
OPatch is lower than minimum required version. Check that the version meets the requirements for all patches, and try again
. Um einen Oracle-Patch anzuwenden, müssen Sie eine kompatible Version des OPatch Dienstprogramms verwenden. Sie finden die erforderliche Version des OPatch-Dienstprogramms in der Readme-Datei für den Patch. Laden Sie das neueste OPatch Programm von My Oracle Support herunter, und versuchen Sie CEV erneut, Ihr Programm zu erstellen. -
Die im CEV Manifest angegebenen Patches sind in der falschen Reihenfolge.
Sie können RDS Ereignisse entweder in der RDS Konsole (wählen Sie im Navigationsbereich Ereignisse aus) oder mithilfe des describe-events
AWS CLI Befehls anzeigen. Die Standardsitzungsdauer beträgt 60 Minuten. Wenn keine Ereignisse zurückgegeben werden, geben Sie eine längere Dauer an, wie im folgenden Beispiel gezeigt.
aws rds describe-events --duration 360
Derzeit ist der MediaImport Service, der Dateien aus Amazon S3 importiert, um sie zu erstellen, CEVs nicht integriert AWS CloudTrail. Wenn Sie also die Datenprotokollierung für Amazon RDS in aktivieren CloudTrail, werden Anrufe an den MediaImport Service, wie z. B. das CreateCustomDbEngineVersion
Ereignis, nicht protokolliert.
Möglicherweise sehen Sie jedoch Anrufe von dem API Gateway, das auf Ihren Amazon S3 S3-Bucket zugreift. Diese Anrufe kommen vom MediaImport Service für die CreateCustomDbEngineVersion
Veranstaltung.
Behebung nicht unterstützter Konfigurationen in RDS Custom for Oracle
Im Modell der geteilten Verantwortung liegt es in Ihrer Verantwortung, Konfigurationsprobleme zu beheben, die Ihre RDS Custom for Oracle-DB-Instance in den falschen unsupported-configuration
Zustand versetzt haben. Wenn das Problem in der AWS Infrastruktur liegt, verwenden Sie die Konsole oder die, AWS CLI um es zu beheben. Wenn das Problem mit dem Betriebssystem oder der Datenbankkonfiguration zusammenhängt, melden Sie sich beim Host an, um das Problem zu beheben.
Anmerkung
In diesem Abschnitt wird erklärt, wie Sie nicht unterstützte Konfigurationen in RDS Custom for Oracle beheben können. Informationen zu RDS Custom for SQL Server finden Sie unterKorrigieren von nicht unterstützten Konfigurationen in RDS Custom for SQL Server.
Die folgende Tabelle enthält eine Beschreibung der Benachrichtigungen und Ereignisse, die vom Support-Perimeter gesendet werden, und zeigt, wie diese behoben werden können. Diese Benachrichtigungen und der Support-Umfang können sich ändern. Hintergrundinformationen zum Support-Perimeter finden Sie unter Support-Perimeter in RDS Custom. Beschreibungen der Ereignisse finden Sie unter Amazon RDS-Ereigniskategorien und Ereignisnachrichten .
Ereignis-ID | Konfiguration | RDSEreignisnachricht | Aktion |
---|---|---|---|
|
Manuelle, nicht unterstützte Konfiguration |
|
Um dieses Problem zu beheben, erstellen Sie einen Support Fall. |
AWS Ressourcen (Infrastruktur) | |||
|
Volumen im Amazon Elastic Block Store (AmazonEBS) |
|
RDSCustom erstellt neben dem EBS Root-Volume, das aus dem Amazon Machine Image (AMI) erstellt wurde, zwei Arten von Volumes und ordnet sie der EC2 Instance zu:
Wenn Sie Ihre DB-Instance erstellen, konfigurieren die von Ihnen angegebenen Speicherkonfigurationen die Datenvolumes. Der Support-Umfang überwacht Folgendes:
Verwenden Sie den folgenden CLI Befehl, um den Volume-Typ der Volume-Details mit den EBS Details der RDS Custom for Oracle-DB-Instance zu vergleichen:
|
|
Volumen im Amazon Elastic Block Store (AmazonEBS) |
|
RDSCustom erstellt neben dem EBS Root-Volume, das aus dem Amazon Machine Image (AMI) erstellt wurde, zwei Arten von Volumes und ordnet sie der EC2 Instance zu:
Wenn Sie Ihre DB-Instance erstellen, konfigurieren die von Ihnen angegebenen Speicherkonfigurationen die Datenvolumes. Der Support-Umfang überwacht Folgendes:
Verwenden Sie den folgenden CLI Befehl, um den Volume-Typ der Volume-Details mit den EBS Details der RDS Custom for Oracle-DB-Instance zu vergleichen:
|
|
Volumen im Amazon Elastic Block Store (AmazonEBS) |
|
RDSCustom erstellt neben dem EBS Root-Volume, das aus dem Amazon Machine Image (AMI) erstellt wurde, zwei Arten von Volumes und ordnet sie der EC2 Instance zu:
Wenn Sie Ihre DB-Instance erstellen, konfigurieren die von Ihnen angegebenen Speicherkonfigurationen die Datenvolumes. Der Support-Umfang überwacht Folgendes:
Verwenden Sie den folgenden CLI Befehl, um den Volume-Typ der Volume-Details mit den EBS Details der RDS Custom for Oracle-DB-Instance zu vergleichen:
|
|
Status der EC2 Amazon-Instanz |
|
Um den Status einer DB-Instance zu überprüfen, verwenden Sie die Konsole oder führen Sie den folgenden AWS CLI Befehl aus:
|
|
EC2Amazon-Instance-Attribute |
|
|
|
Status der EC2 Amazon-Instanz |
|
Der Support-Perimeter überwacht Benachrichtigungen über Statusänderungen der EC2 Instance. Die EC2 Instanz muss immer laufen. Um Ihre DB-Instance zu löschen
|
|
Status der EC2 Amazon-Instanz |
|
Der Support-Perimeter überwacht Benachrichtigungen über Statusänderungen der EC2 Instanz. Die EC2 Instanz muss immer laufen. Um Ihre DB-Instance neu zu starten
|
Betriebssystem | |||
|
RDSBenutzerdefinierter Agentenstatus |
|
Bei RDS Custom for Oracle verlässt die DB-Instance den Support-Perimeter, wenn der RDS Custom Agent beendet wird. Der Agent veröffentlicht die Um den RDS Custom Agent neu zu starten
Wenn der RDS Custom Agent wieder läuft, wird die |
|
AWS Systems Manager Status des SSM Agenten (Agenten) |
|
SSMDer Agent muss immer ausgeführt werden. Der RDS benutzerdefinierte Agent ist dafür verantwortlich, sicherzustellen, dass der Systems Manager Manager-Agent ausgeführt wird. Wenn der SSM Agent beendet und anschließend neu gestartet wurde, veröffentlicht der RDS benutzerdefinierte Agent eine Metrik für CloudWatch. Der RDS benutzerdefinierte Agent hat einen Alarm für die Metrik eingerichtet, der ausgelöst wird, wenn in den letzten drei Minuten jeweils ein Neustart stattgefunden hat. Der Support-Perimeter überwacht außerdem alle 30 Minuten den Prozessstatus des SSM Agenten auf dem Host. Weitere Informationen finden Sie unter Troubleshooting SSM Agent. |
|
AWS Systems Manager Status des SSM Agenten (Agenten) |
|
Weitere Informationen finden Sie unter Troubleshooting SSM Agent. |
|
Zeitzone des Betriebssystems |
|
RDSDie Automatisierung hat festgestellt, dass die Zeitzone auf dem Host ohne Verwendung einer Optionsgruppe geändert wurde. Diese Änderung auf Hostebene kann zu RDS Automatisierungsfehlern führen, sodass die EC2 Instanz in den Um die Zeitzoneneinstellung zu korrigieren
Ihre DB-Instance ist innerhalb von 30 Minuten verfügbar. Um zu verhindern, dass Sie sich in future außerhalb des Perimeters bewegen, ändern Sie Ihre Zeitzone über eine Optionsgruppe. Weitere Informationen finden Sie unter Oracle-Zeitzone. |
|
|
|
Der Support-Perimeter überprüft, ob bestimmte Betriebssystembenutzer bestimmte Befehle auf dem Host ausführen dürfen. Es überwacht Wenn die
Wenn das Überschreiben nicht erfolgreich ist, verbleibt Ihre DB-Instance im Konfigurationsstatus „Nicht unterstützt“. Um dieses Problem zu beheben, machen Sie entweder die Änderungen in der Um Änderungen an den Konfigurationen zu untersuchen
|
|
Barrierefreiheit im S3-Bucket |
|
|
Datenbank | |||
|
Verzögerungsziel für Datenbankarchiv |
|
Der Support-Perimeter überwacht den Um das Verzögerungsziel für archivierte Redo-Logs zu ändern
Ihre DB-Instance ist innerhalb von 30 Minuten verfügbar. |
|
Oracle-Data-Guard-Rolle |
|
Der Support-Perimeter überwacht die aktuelle Datenbankrolle alle 15 Sekunden und sendet eine CloudWatch Benachrichtigung, wenn sich die Datenbankrolle geändert hat. Oracle Data Guard Um Ihre Oracle Data Guard-Datenbankrolle auf einen unterstützten Wert zurückzusetzen
Nachdem der Support-Perimeter festgestellt hat, dass die Datenbankrolle unterstützt wird, ist Ihre RDS Custom for Oracle-DB-Instance innerhalb von 15 Sekunden verfügbar. |
|
Datenbank-Zustand |
|
Der Support-Umfang überwacht den Status der DB-Instance. Es überwacht auch, wie viele Neustarts während der vorherigen Stunde und des vorherigen Tages stattgefunden haben. Sie werden benachrichtigt, wenn sich die Instanz in einem Zustand befindet, in dem sie noch existiert, aber Sie können nicht damit interagieren. Damit der Support-Perimeter den Status Ihrer Instanz auswertet
Nach dem Neustart Ihrer DB-Instance erkennt der RDS Custom Agent, dass Ihre DB-Instance nicht mehr reagiert. Anschließend wird der Support-Perimeter benachrichtigt, damit der Status der DB-Instance neu bewertet wird. |
|
Datenbank-Protokollmodus |
|
Um den Protokollmodus Ihrer DB-Instance zu ändern
|
|
Oracle-Homepfad |
|
|
|
Eindeutiger Datenbankname |
|
Um den eindeutigen Datenbanknamen für Ihre DB-Instance zu ändern
Der RDS Custom Agent startet Ihre DB-Instance automatisch neu und setzt den Protokollmodus auf |
Fehlerbehebung bei Upgrades für RDS Custom for Oracle
Ihr Upgrade einer RDS Custom for Oracle-Instanz schlägt möglicherweise fehl. Im Folgenden finden Sie Techniken, die Sie bei Upgrades von RDS Custom DB for Oracle DB-Instances verwenden können:
-
Untersuchen Sie die Upgrade-Ausgabeprotokolldateien im
/tmp
-Verzeichnis auf Ihrer DB-Instance. Die Namen der Protokolle hängen von Ihrer DB-Engine-Version ab. Es können beispielsweise Protokolle angezeigt werden, die die Zeichenfolgencatupgrd
odercatup
enthalten. -
Untersuchen Sie die Datei
alert.log
im Verzeichnis/rdsdbdata/log/trace
. -
Führen Sie folgenden
grep
-Befehl imroot
-Verzeichnis zur Verfolgung des Upgrade-Betriebssystemprozesses aus. Dieser Befehl zeigt an, wo die Protokolldateien geschrieben werden, und bestimmt den Status des Upgrade-Prozesses.ps -aux | grep upg
Das folgende Beispiel zeigt die Beispielausgabe.
root 18884 0.0 0.0 235428 8172 ? S< 17:03 0:00 /usr/bin/sudo -u rdsdb /rdsdbbin/scripts/oracle-control ORCL op_apply_upgrade_sh RDS-UPGRADE/2.upgrade.sh rdsdb 18886 0.0 0.0 153968 12164 ? S< 17:03 0:00 /usr/bin/perl -T -w /rdsdbbin/scripts/oracle-control ORCL op_apply_upgrade_sh RDS-UPGRADE/2.upgrade.sh rdsdb 18887 0.0 0.0 113196 3032 ? S< 17:03 0:00 /bin/sh /rdsdbbin/oracle/rdbms/admin/RDS-UPGRADE/2.upgrade.sh rdsdb 18900 0.0 0.0 113196 1812 ? S< 17:03 0:00 /bin/sh /rdsdbbin/oracle/rdbms/admin/RDS-UPGRADE/2.upgrade.sh rdsdb 18901 0.1 0.0 167652 20620 ? S< 17:03 0:07 /rdsdbbin/oracle/perl/bin/perl catctl.pl -n 4 -d /rdsdbbin/oracle/rdbms/admin -l /tmp catupgrd.sql root 29944 0.0 0.0 112724 2316 pts/0 S+ 18:43 0:00 grep --color=auto upg
-
Führen Sie die folgende SQL Abfrage aus, um den aktuellen Status der Komponenten zu überprüfen und die Datenbankversion und die auf der DB-Instance installierten Optionen zu ermitteln.
SET LINESIZE 180 COLUMN COMP_ID FORMAT A15 COLUMN COMP_NAME FORMAT A40 TRUNC COLUMN STATUS FORMAT A15 TRUNC SELECT COMP_ID, COMP_NAME, VERSION, STATUS FROM DBA_REGISTRY ORDER BY 1;
Die Ausgabe sieht in etwa folgendermaßen aus.
COMP_NAME STATUS PROCEDURE ---------------------------------------- -------------------- -------------------------------------------------- Oracle Database Catalog Views VALID DBMS_REGISTRY_SYS.VALIDATE_CATALOG Oracle Database Packages and Types VALID DBMS_REGISTRY_SYS.VALIDATE_CATPROC Oracle Text VALID VALIDATE_CONTEXT Oracle XML Database VALID DBMS_REGXDB.VALIDATEXDB 4 rows selected.
-
Führen Sie die folgende SQL Abfrage aus, um nach ungültigen Objekten zu suchen, die den Upgrade-Prozess stören könnten.
SET PAGES 1000 LINES 2000 COL OBJECT FOR A40 SELECT SUBSTR(OWNER,1,12) OWNER, SUBSTR(OBJECT_NAME,1,30) OBJECT, SUBSTR(OBJECT_TYPE,1,30) TYPE, STATUS, CREATED FROM DBA_OBJECTS WHERE STATUS <>'VALID' AND OWNER IN ('SYS','SYSTEM','RDSADMIN','XDB');
Problembehandlung bei der Replikat-Promotion für RDS Custom for Oracle
Sie können verwaltete Oracle-Replicas in RDS Custom for Oracle mithilfe der Konsole, des promote-read-replica
AWS CLI Befehls oder heraufstufen. PromoteReadReplica
API Wenn Sie Ihre primäre DB-Instance löschen und alle Replikate fehlerfrei sind, stuft RDS Custom for Oracle Ihre verwalteten Replikate automatisch zu eigenständigen Instances herauf. Wenn ein Replikat die Automatisierung angehalten hat oder sich außerhalb des Support-Bereichs befindet, müssen Sie das Replikat reparieren, bevor Custom es automatisch heraufstufen kann. RDS Weitere Informationen finden Sie unter Heraufstufen eines RDS Custom for Oracle-Replikats zu einer eigenständigen DB-Instance.
Der Workflow zur Replikat-Heraufstufung kann in der folgenden Situation hängen bleiben:
-
Die primäre DB-Instance hat den Status
STORAGE_FULL
. -
Die Primärdatenbank kann nicht alle ihre Online-Redo-Logs archivieren.
-
Zwischen den archivierten Redo-Log-Dateien auf dem Oracle-Replikat und der Primärdatenbank besteht eine Lücke.
Um auf den festgefahrenen Workflow zu reagieren
-
Synchronisieren Sie die Redo-Log-Lücke auf Ihrer Oracle Replica DB-Instance.
-
Erzwingen Sie die Heraufstufung Ihres gelesenen Replikats auf das neueste angewandte Redo-Protokoll. Führen Sie die folgenden Befehle SQL in*Plus aus:
ALTER DATABASE ACTIVATE STANDBY DATABASE; SHUTDOWN IMMEDIATE STARTUP
-
Kontaktieren Sie sie Support und bitten Sie sie, Ihre DB-Instance in
available
den Status zu versetzen.