Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Résolution des problèmes de base de données pour Amazon RDS Custom for Oracle
Le modèle de responsabilité partagée de RDS Custom fournit un accès au niveau du shell du système d'exploitation et un accès administrateur de base de données. RDS Custom exécute les ressources de votre compte, contrairement à Amazon RDS qui exécute les ressources d'un compte système. Un meilleur accès s'accompagne de responsabilités plus importantes. Dans les sections suivantes, vous apprendrez à résoudre les problèmes liés aux instances de base de données Amazon RDS Custom.
Note
Cette section explique comment résoudre les problèmes liés à RDS Custom for Oracle. Pour la résolution des problèmes liés à RDS Custom for SQL Server, consultez Résolution des problèmes liés à la base de données pour Amazon RDS Custom for SQL Server.
Rubriques
- Affichage des événements RDS Custom
- Abonnement aux événements personnalisés RDS
- Résolution des problèmes liés à la création d'une version de moteur personnalisée pour RDS Custom for Oracle
- Correction des configurations non prises en charge dans RDS Custom for Oracle
- Dépannage des mises à niveau de RDS Custom for Oracle
- Dépannage de la promotion de réplica pour RDS Custom for Oracle
Affichage des événements RDS Custom
La procédure d'affichage est la même pour les instances de base de données RDS Custom et Amazon RDS. Pour plus d’informations, consultez Consulter les RDS événements Amazon.
Pour afficher la notification d'événement personnalisée RDS à l'aide de AWS CLI, utilisez la describe-events
commande. RDS Custom s'accompagne de plusieurs nouveaux événements. Les catégories d'événements sont les mêmes que pour Amazon RDS. Pour obtenir la liste des événements, consultez Catégories RDS d'événements Amazon et messages d'événements .
L'exemple suivant récupère les détails des événements qui se sont produits pour l'instance de base de données RDS Custom spécifiée.
aws rds describe-events \ --source-identifier my-custom-instance \ --source-type db-instance
Abonnement aux événements personnalisés RDS
La procédure d'abonnement à des événements est la même pour les instances de base de données RDS Custom et Amazon RDS. Pour plus d’informations, consultez S'abonner aux notifications d'RDSévénements Amazon.
Pour vous abonner à la notification d'événements RDS Custom à l'aide de l'interface de ligne de commande, utilisez la commande create-event-subscription
. Incluez les paramètres requis suivants :
-
--subscription-name
-
--sns-topic-arn
L'exemple suivant montre comment créer un abonnement pour les événements de sauvegarde et de restauration d'une instance de base de données RDS Custom dans le compte AWS
actuel. Les notifications sont envoyées à une rubrique Amazon Simple Notification Service (Amazon SNS) spécifiée par --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
Résolution des problèmes liés à la création d'une version de moteur personnalisée pour RDS Custom for Oracle
Lorsque la création d'une CEV échoue, RDS Custom émet RDS-EVENT-0198
avec le message Creation failed for custom engine
version
et ajoute des détails sur l'échec. Par exemple, l'événement imprime les fichiers manquants.major-engine-version.cev_name
La création d'une CEV peut échouer en raison des problèmes suivants :
-
Le compartiment Amazon S3 contenant vos fichiers d'installation ne se trouve pas dans la même AWS région que votre CEV.
-
Lorsque vous demandez la création d'un CEV dans et Région AWS pour la première fois, RDS Custom crée un compartiment S3 pour stocker les ressources personnalisées RDS (telles que les artefacts CEV, les journaux et AWS CloudTrail les journaux de transactions).
La création de la CEV échoue si RDS Custom ne parvient pas à créer le compartiment S3. Soit l'appelant ne dispose pas des autorisations S3, comme décrit dans la section Étape 5 : accordez les autorisations requises à votre utilisateur ou à votre rôle IAM, soit le nombre de compartiments S3 a atteint la limite.
-
L'appelant ne dispose pas des autorisations nécessaires pour obtenir des fichiers de votre compartiment S3 contenant les fichiers multimédias d'installation. Ces autorisations sont décrites dans la section Étape 7 : ajouter les IAM autorisations nécessaires.
-
Votre politique IAM est dotée d'une condition
aws:SourceIp
. Assurez-vous de suivre les recommandations de la section AWS refuse l'accès à AWS en fonction de l'adresse IP source dans le Guide de l'utilisateur AWS Identity and Access Management . Assurez-vous également que l'appelant dispose des autorisations S3 décrites dans Étape 5 : accordez les autorisations requises à votre utilisateur ou à votre rôle IAM. -
Les fichiers multimédias d'installation répertoriés dans le manifeste CEV ne se trouvent pas dans votre compartiment S3.
-
RDS Custom ne connaît pas les totaux de contrôle SHA-256 des fichiers d'installation.
Vérifiez que les totaux de contrôle SHA-256 des fichiers fournis correspondent à celui qui se trouve sur le site Web Oracle. Si les totaux de contrôle correspondent, contactezAWS Support
et indiquez le nom de la CEV qui a échoué, le nom de fichier et le total de contrôle. -
La version OPatch est incompatible avec vos fichiers correctifs. Vous pourriez obtenir le message suivant :
OPatch is lower than minimum required version. Check that the version meets the requirements for all patches, and try again
. Pour appliquer un correctif Oracle, vous devez utiliser une version compatible de l'utilitaire OPatch. Vous pouvez trouver la version requise de l'utilitaire Opatch dans le fichier readme du correctif. Téléchargez l'utilitaire OPatch le plus récent depuis My Oracle Support, et essayez à nouveau de créer votre CEV. -
Les correctifs spécifiés dans le manifeste CEV ne sont pas dans le bon ordre.
Vous pouvez afficher les événements RDS sur la console RDS (dans le volet de navigation, choisissez Events) ou à l'aide de la describe-events
AWS CLI commande. La durée par défaut est de 60 minutes. Si aucun événement n'est renvoyé, spécifiez une durée plus importante, comme illustré dans l'exemple suivant.
aws rds describe-events --duration 360
Actuellement, le MediaImport service qui importe des fichiers depuis Amazon S3 pour créer des CEV n'est pas intégré à AWS CloudTrail. Par conséquent, si vous activez l'enregistrement des données pour Amazon RDS in CloudTrail, les appels au MediaImport service tels que l'CreateCustomDbEngineVersion
événement ne sont pas enregistrés.
Vous pouvez toutefois voir des appels provenant de l'API Gateway qui accède à votre compartiment Amazon S3. Ces appels proviennent du MediaImport service de l'CreateCustomDbEngineVersion
événement.
Correction des configurations non prises en charge dans RDS Custom for Oracle
Dans le modèle de responsabilité partagée, il vous incombe de corriger les problèmes de configuration qui redonnent à votre instance de base de données RDS Custom for Oracle le statut unsupported-configuration
. Si le problème concerne l' AWS infrastructure, vous pouvez utiliser la console ou le AWS CLI pour le résoudre. Si le problème concerne le système d'exploitation ou la configuration de la base de données, vous pouvez vous connecter à l'hôte pour le résoudre.
Note
Cette section explique comment corriger les configurations non prises en charge dans RDS Custom for Oracle. Pour obtenir des informations sur RDS Custom for SQL Server, consultez Corriger les configurations non prises en charge dans RDS Custom for Server SQL.
Le tableau suivant présente des descriptions des notifications et des événements envoyés par le périmètre de prise en charge et explique comment les corriger. Ces notifications et le périmètre de prise en charge sont susceptibles d'être modifiés. Pour en savoir plus sur le périmètre de prise en charge, consultez Périmètre de prise en charge RDS Custom. Pour les descriptions des événements, consultez Catégories RDS d'événements Amazon et messages d'événements .
ID de l’événement | Configuration | Message d'événement RDS | Action |
---|---|---|---|
|
Configuration manuelle non prise en charge |
|
Pour résoudre ce problème, créez un AWS Support dossier. |
AWS ressources (infrastructure) | |||
|
Volumes Amazon Elastic Block Store (Amazon EBS) |
|
RDS Custom crée deux types de volumes EBS, outre le volume racine créé à partir de l'Amazon Machine Image (AMI), et les associe à l'instance EC2 :
Lorsque vous créez votre instance de base de données, les configurations de stockage que vous spécifiez configurent les volumes de données. Le périmètre de prise en charge surveille ce qui suit :
Utilisez la commande CLI suivante pour comparer le type de volume des détails du volume EBS et les détails de l'instance de base de données RDS Custom for Oracle :
|
|
Volumes Amazon Elastic Block Store (Amazon EBS) |
|
RDS Custom crée deux types de volumes EBS, outre le volume racine créé à partir de l'Amazon Machine Image (AMI), et les associe à l'instance EC2 :
Lorsque vous créez votre instance de base de données, les configurations de stockage que vous spécifiez configurent les volumes de données. Le périmètre de prise en charge surveille ce qui suit :
Utilisez la commande CLI suivante pour comparer le type de volume des détails du volume EBS et les détails de l'instance de base de données RDS Custom for Oracle :
|
|
Volumes Amazon Elastic Block Store (Amazon EBS) |
|
RDS Custom crée deux types de volumes EBS, outre le volume racine créé à partir de l'Amazon Machine Image (AMI), et les associe à l'instance EC2 :
Lorsque vous créez votre instance de base de données, les configurations de stockage que vous spécifiez configurent les volumes de données. Le périmètre de prise en charge surveille ce qui suit :
Utilisez la commande CLI suivante pour comparer le type de volume des détails du volume EBS et les détails de l'instance de base de données RDS Custom for Oracle :
|
|
État de l'instance Amazon EC2 |
|
Pour vérifier l'état d'une instance de base de données, utilisez la console ou exécutez la AWS CLI commande suivante :
|
|
Attributs de l'instance Amazon EC2 |
|
|
|
État de l'instance Amazon EC2 |
|
Le périmètre de prise en charge surveille les notifications de changement d'état de l'instance EC2. L'instance EC2 doit toujours être en cours d'exécution. Pour supprimer votre instance de base de données
|
|
État de l'instance Amazon EC2 |
|
Le périmètre de prise en charge surveille les notifications de changement d'état de l'instance EC2. L'instance EC2 doit toujours être en cours d'exécution. Pour redémarrer votre instance de base de données
|
Système d’exploitation | |||
|
Statut de l'agent RDS Custom |
|
Sur RDS Custom for Oracle, l'instance de base de données sort du périmètre de prise en charge si l'agent RDS Custom s'arrête. L'agent publie la Pour redémarrer l'agent RDS Custom
Lorsque l'agent RDS Custom s'exécute à nouveau, la |
|
AWS Systems Manager statut de l'agent (agent SSM) |
|
L'agent SSM doit toujours être en cours d'exécution. L'agent RDS Custom est chargé de s'assurer que Systems Manager Agent est en cours d'exécution. Si l'agent SSM a été arrêté puis redémarré, l'agent personnalisé RDS publie une métrique sur. CloudWatch L'agent RDS Custom est doté d'une alarme sur la métrique configurée pour se déclencher si un redémarrage a eu lieu au cours des trois dernières minutes. Le périmètre de support surveille également l'état du processus de l'agent SSM sur l'hôte toutes les 30 minutes. Pour de plus amples informations, consultez la section Résolution des problèmes de SSM Agent. |
|
AWS Systems Manager statut de l'agent (agent SSM) |
|
Pour de plus amples informations, consultez la section Résolution des problèmes de SSM Agent. |
|
Fuseau horaire du système d'exploitation |
|
L'automatisation RDS a détecté que le fuseau horaire de l'hôte avait été modifié sans utiliser de groupe d'options. Ce changement au niveau de l'hôte peut provoquer des échecs d'automatisation RDS, de sorte que l'instance EC2 est placée dans cet état. Pour corriger le réglage du fuseau horaire
Votre instance de base de données devient disponible dans les 30 minutes. Pour éviter de vous déplacer hors du périmètre à l'avenir, modifiez votre fuseau horaire via un groupe d'options. Pour plus d’informations, consultez Fuseau horaire Oracle. |
|
Configurations |
|
Le périmètre de prise en charge vérifie que certains utilisateurs du système d'exploitation sont autorisés à exécuter certaines commandes. Il vérifie les configurations Lorsque les configurations
Pour étudier les modifications apportées aux configurations sudo
Une fois que le périmètre de support a déterminé que les |
|
Accessibilité du compartiment S3 |
|
|
Database (Base de données) | |||
|
Cible de retard d'archivage de la base de données |
|
Le périmètre de support surveille le paramètre Pour modifier l'objectif de décalage pour les redo logs archivés
Votre instance de base de données devient disponible dans les 30 minutes. |
|
Rôle Oracle Data Guard |
|
Le périmètre de support surveille le rôle de base de données actuel toutes les 15 secondes et envoie une CloudWatch notification si le rôle de base de données a changé. Le paramètre Oracle Data Guard Pour restaurer votre rôle de base de données Oracle Data Guard à une valeur prise en charge
Une fois que le périmètre de prise en charge a déterminé que le rôle de base de données est pris en charge, votre instance de base de données RDS Custom for Oracle devient disponible dans les 15 secondes. |
|
État de la base de données |
|
Le périmètre de prise en charge surveille l'état de l'instance de base de données. Il surveille également le nombre de redémarrages qui se sont produits au cours de la dernière heure et du jour précédent. Vous êtes averti lorsque l'instance se trouve dans un état où elle se trouve toujours, mais vous ne pouvez pas interagir avec elle. Pour que le périmètre de support évalue l'état de votre instance
Après le redémarrage de votre instance de base de données, l'agent personnalisé RDS détecte que votre instance de base de données ne répond plus. Il notifie alors le périmètre de prise en charge qu'il faut réévaluer le statut de votre instance de base de données. |
|
Mode journal de base de données |
|
Pour modifier le mode de journalisation de votre instance de base de données sur
|
|
Chemin d'accès Oracle Home |
|
|
|
Nom unique de la base de données |
|
Pour modifier le nom unique de base de données de votre instance de base de données
L'agent RDS Custom redémarre automatiquement votre instance de base de données et définit le mode journal sur. |
Dépannage des mises à niveau de RDS Custom for Oracle
Votre mise à niveau d'une instance de RDS Custom for Oracle peut échouer. Vous trouverez ci-dessous des techniques que vous pouvez utiliser lors des mises à niveau des bases de données RDS Custom pour les instances de base de données Oracle :
-
Examinez tous les fichiers journaux de sortie de la mise à niveau dans l'annuaire
/tmp
sur votre instance de base de données. Les noms des journaux dépendent de la version du moteur de votre base de données. Par exemple, vous pouvez voir des journaux contenant les chaînescatupgrd
oucatup
. -
Examinez le fichier
alert.log
situé dans l'annuaire/rdsdbdata/log/trace
. -
Exécutez la commande
grep
suivante dans le répertoireroot
pour suivre le processus de mise à niveau du système d'exploitation. Cette commande indique l'emplacement d'écriture des fichiers journaux et détermine l'état du processus de mise à niveau.ps -aux | grep upg
Voici un exemple de résultat.
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
-
Exécutez la requête SQL suivante pour vérifier l'état actuel des composants, et trouver la version de la base de données et les options installées sur l'instance de base de données.
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;
La sortie se présente comme suit :
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.
-
Exécutez la requête SQL suivante pour rechercher d'éventuels objets non valides susceptibles de perturber le processus de mise à niveau.
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');
Dépannage de la promotion de réplica pour RDS Custom for Oracle
Vous pouvez promouvoir les répliques Oracle gérées dans RDS Custom for Oracle à l'aide de la console, de la promote-read-replica
AWS CLI commande ou PromoteReadReplica
de l'API. Si vous supprimez votre instance de base de données principale et que tous les réplicas sont sains, RDS Custom for Oracle transforme automatiquement vos réplicas gérée en instances autonomes. Si un réplica a mis en pause l'automatisation ou se trouve en dehors du périmètre de support, vous devez réparer le réplica avant que RDS Custom puisse le promouvoir automatiquement. Pour plus d’informations, consultez Limites de promotion relatives aux répliques pour RDS Custom for Oracle.
Le flux de travail de promotion des réplicas peut se bloquer dans la situation suivante :
-
L'instance de base de données principale est dans l'état
STORAGE_FULL
. -
La base de données principale ne peut pas archiver tous ses journaux de rétablissement en ligne.
-
Il existe un écart entre les fichiers journaux de reprise archivés sur votre réplica Oracle et la base de données principale.
Pour répondre au flux de travail bloqué
-
Synchronisez l'écart du journal de reprise sur votre réplica d’instance de base de données Oracle.
-
Forcez la promotion de votre réplica en lecture vers le dernier journal de reprise appliqué. Exécutez les commandes suivantes dans SQL*Plus :
ALTER DATABASE ACTIVATE STANDBY DATABASE; SHUTDOWN IMMEDIATE STARTUP
-
Contactez-les AWS Support et demandez-leur de passer votre instance de base de données au
available
statut.