Affichage des informations de patch et de fenêtre de maintenance, définition du niveau de patch
Autonomous Database utilise des fenêtres de maintenance prédéfinies pour appliquer automatiquement des patches à votre base de données. Vous pouvez afficher les informations de maintenance et de patch, ainsi que les détails de l'historique des maintenances d'une base de données autonome.
- A propos de la maintenance programmée et de l'application de patches
Toutes les instances Autonomous Database sont automatiquement affectées à une fenêtre de maintenance, et différentes instances peuvent avoir des fenêtres de maintenance différentes. - Affichage de l'historique des événements de maintenance
Vous pouvez afficher l'historique des événements de maintenance d'Autonomous Database pour obtenir des détails sur les événements de maintenance passés, tels que le titre, l'état, l'heure de début et l'heure de fin. - Affichage du niveau de patch et des détails de patch
Vous pouvez visualiser des informations sur les patches Autonomous Database, y compris la liste des composants et des problèmes résolus. - Définition du niveau de patch
Lorsque vous provisionnez ou clonez une instance Autonomous Database, vous pouvez sélectionner un niveau de patch à appliquer aux patches à venir. Vous pouvez également modifier le niveau de patch après le provisionnement d'une instance Autonomous Database. Il existe deux options de niveau de patch : Normal et Anticipé. - Affichage des notifications de statut de maintenance
La vueDB_NOTIFICATIONS
stocke des informations sur les notifications de statut de maintenance pour votre instance Autonomous Database. - Meilleures pratiques pour maintenir la disponibilité des applications pendant les fenêtres de maintenance
Fournit des informations sur les meilleures pratiques pour maintenir la disponibilité des applications et minimiser les perturbations des applications pendant une fenêtre de maintenance programmée.
A propos de la maintenance programmée et de l'application de patches
Toutes les instances Autonomous Database sont automatiquement affectées à une fenêtre de maintenance, et différentes instances peuvent avoir des fenêtres de maintenance différentes.
Autonomous Database utilise ces fenêtres de maintenance pour appliquer des patches à l'ensemble de la pile utilisée pour exécuter la base de données, notamment le logiciel de base de données, le dictionnaire de base de données, les systèmes d'exploitation, le stockage Exadata, les microprogrammes, etc.
Les correctifs incluent des corrections de bogues, des correctifs de sécurité et de nouvelles fonctionnalités. Les correctifs de sécurité critiques sont toujours appliqués dès qu'ils sont disponibles. Les patches sont déployés de manière uniforme dans toutes les bases de données, de sorte que vous n'avez pas besoin de suivre les patches exceptionnels. Une fois qu'un correctif est implémenté pour un problème, par exemple un problème détecté dans une base de données, le correctif est déployé sur toutes les instances Autonomous Database.
Tous les correctifs sont soumis à un processus de test et de validation rigoureux qui fait partie d'un pipeline d'intégration et de développement continu. Les correctifs sont validés en plusieurs étapes et environnements avant d'être déployés vers les bases de données Early Patch Level et Always Free, puis vers les bases de données Regular Patch Level. Ce pipeline permet d'intercepter et de corriger les régressions avant le déploiement du patch sur toutes les bases de données. Dans le cas peu probable où l'application de correctifs introduit une régression, Oracle dispose de processus pour atténuer le problème, notamment des actions telles que les suivantes :
-
Annulation (rollback) d'un sous-ensemble du patch ou de l'intégralité du patch.
-
Définition des paramètres de base de données pour désactiver le patch qui a introduit la régression.
-
Application d'un patch en ligne pour résoudre le problème sans temps d'arrêt ni interruption de la connexion.
Détection de régression automatique pour Autonomous Database fournit une gestion proactive des régressions et permet une détection, un diagnostic et une atténuation automatisés des problèmes. Cela peut réduire ou éliminer la nécessité pour vous d'examiner manuellement les problèmes et de déposer les demandes de service. La détection automatique de régression surveille toutes les bases de données, à la fois aux niveaux de patch Early et Regular, mais elle est particulièrement utile lorsque vous testez une charge globale sur une base de données de niveau de patch Early. Si la détection automatique de régression détecte un problème et identifie une régression, elle signale automatiquement le problème avec des informations détaillées pour le diagnostiquer. Ce reporting automatisé, dans le cadre du cycle d'application continue des patches, permet à Oracle d'atténuer ou de corriger le problème avant que les modifications n'atteignent les bases de données de production (bases de données de niveau de patch standard). La détection automatique de régression peut ne pas être en mesure de trouver tous les problèmes ; dans les cas où vous voyez des problèmes vous-même, vous pouvez déposer une demande de service.
La détection automatique de régression comprend les éléments suivants :
-
Automatic Regression Detection surveille la base de données et, en cas d'incident, enregistre un bug pour l'incident avec des informations de diagnostic détaillées extraites du référentiel AWR (Automatic Workload Repository).
-
Le système de reporting des incidents envoie des notifications aux équipes des opérations et du développement Oracle Cloud Infrastructure grâce à la surveillance automatique des incidents Oracle.
-
Les problèmes sont atténués par l'analyse des alertes de détection de régression automatique.
-
L'apprentissage et les améliorations sont apportées à la détection automatique de régression sur une base continue.
La page Détails de l'instance Autonomous Database affiche les champs Niveau de patch et Prochaine maintenance qui incluent la date et l'heure de la fenêtre de maintenance à venir. La date est mise à jour automatiquement lorsque la prochaine fenêtre de maintenance est programmée. Le lien Visualiser l'historique fournit des détails sur les maintenances passées. Le champ Composant cible affiche le composant à mettre à jour dans la fenêtre de maintenance suivante.

Description de l'illustration adb_patch_level.png
Lorsque Autonomous Data Guard est activé, la console affiche également des informations de maintenance pour une base de données de secours locale.
La zone Maintenance contient les informations suivantes :
Champ de maintenance | Description |
---|---|
Niveau de patch |
Affiche le niveau de patch pour l'instance. Il existe deux options de niveau de patch : Normal et Anticipé. Cliquez sur Modifier pour gérer les paramètres de niveau de patch. Pour plus d'informations, reportez-vous à Définition du niveau de patch. |
Prochaine maintenance |
Indique la période de la prochaine fenêtre de maintenance programmée. Cliquez sur Afficher l'historique pour afficher les détails de la maintenance passée. Pour plus d'informations, reportez-vous à Affichage de l'historique des événements de maintenance. |
Composant cible |
Répertorie les composants cible de la fenêtre de maintenance à venir. Valeurs possibles :
|
Prochaine maintenance (homologue local) |
Indique la période de la prochaine fenêtre de maintenance programmée pour une base de données de secours Autonomous Data Guard locale. Cliquez sur Afficher l'historique pour afficher les détails de la maintenance passée. |
Composant cible (homologue local) |
Répertorie les composants cible de la fenêtre de maintenance à venir sur Autonomous Data Guard. Valeurs possibles :
|
Contacts client |
Lorsque des contacts client sont définis, Oracle envoie des notifications relatives aux problèmes liés au service Autonomous Database à l'adresse électronique indiquée. Pour plus d'informations, reportez-vous à Affichage et gestion des contacts client pour les problèmes opérationnels et les annonces. |
Remarques concernant la maintenance programmée et l'application de patches :
-
L'équipe des opérations Autonomous Database n'accède jamais à vos données, sauf si vous accordez explicitement des droits d'accès via une demande de service pour une durée spécifiée.
-
Si votre base de données est à l'état Arrêté pendant la fenêtre de maintenance, les modifications apportées à la base de données par le patch sont appliquées lorsque vous démarrez la base de données.
-
La base de données reste disponible pendant la fenêtre de maintenance. Les nouvelles connexions à la base de données réussiront toujours. Vos connexions à la base de données existantes peuvent être brièvement déconnectées, selon le composant auquel des patches ont été appliqués. Toutefois, vous pouvez vous connecter immédiatement et continuer à utiliser votre base de données :
-
Pour les patches de base de données, les connexions existantes peuvent être déconnectées si elles sont exécutées plus longtemps que la durée de purge après le démarrage de l'application de patches.
-
Pour les patches d'infrastructure, les connexions existantes peuvent être déconnectées si elles sont exécutées plus longtemps que la durée de purge après le démarrage de l'application de patches.
-
Pour les patches de dictionnaire, les connexions existantes peuvent être déconnectées si elles contiennent des verrous sur les objets de dictionnaire auxquels des patches sont appliqués. Sinon, les connexions existantes ne seront pas affectées. Par exemple, si votre application exécute une procédure dans le package
DBMS_CLOUD
lors de l'application de patches et que le patch doit être appliqué au package, la session utilisant ce package peut être déconnectée.Pour plus d'informations, reportez-vous à SESSION_EXIT_ON_PACKAGE_STATE_ERROR.
-
-
Vous pouvez utiliser Oracle Cloud Infrastructure Events pour être informé du début et de la fin de la maintenance. Pour plus d'informations, reportez-vous à Evénements d'information sur Autonomous Database.
-
Si vous voulez remplacer la fenêtre de maintenance affectée par une autre fenêtre de 2 heures le samedi ou le dimanche dans le fuseau horaire local de la région, enregistrez une demande de service auprès du support technique Oracle Cloud.
Si vous voulez une période spécifique pour votre fenêtre de maintenance le samedi ou le dimanche dans le fuseau horaire local de la région, vous pouvez demander la période avec la même demande de service. Si vous demandez une période spécifique pour votre fenêtre de maintenance, la modification ne peut être effectuée que si la période que vous demandez est disponible pour votre base de données.
-
Si le stockage alloué de votre base de données est de 384 To, vous pouvez choisir une fenêtre personnalisée de 2 heures en déposant une demande de service auprès du support technique Oracle Cloud (autrement dit, vous pouvez déposer une demande de service pour demander un jour et une période spécifiques le samedi ou le dimanche dans le fuseau horaire local de la région pour votre fenêtre de maintenance).
Pour plus d'informations sur la capture d'une charge globale à partir d'une base de données de production et la réexécution de la charge globale sur un clone actualisable de niveau de patch précoce cible, reportez-vous à Test des charges globales par rapport à un patch à venir.
Reportez-vous à Objectif de niveau de service à régression zéro pour plus de détails sur l'objectif de niveau de service à régression zéro pour Autonomous Database.
Affichage de l'historique des événements de maintenance
Vous pouvez afficher l'historique des événements de maintenance d'Autonomous Database pour obtenir des détails sur les événements de maintenance passés, tels que le titre, l'état, l'heure de début et l'heure de fin.
Effectuez les étapes prérequises suivantes, le cas échéant :
-
Ouvrez la console d'Oracle Cloud Infrastructure en cliquant sur
en regard du nom cloud.
- Dans le menu de navigation de gauche d'Oracle Cloud Infrastructure, cliquez sur Oracle Database, puis sur Autonomous Database.
-
Sur la page Bases de données autonomes, sélectionnez une instance Autonomous Database dans les liens sous la colonne Nom d'affichage.
Pour afficher l'historique des maintenances, procédez comme suit :
Champ | Description |
---|---|
Titre |
Nom de l'événement de maintenance. |
Type de maintenance |
Planifié ou Non planifié. |
Composant cible |
Type de la ressource sur laquelle l'événement de maintenance a lieu : Base de données, Dictionnaire ou Infrastructure. |
Département |
Succès, Echec ou En cours. |
Date et heure de début |
Heure de début de la maintenance. |
Heure de fin |
Heure de fin de la maintenance. |
L'historique des événements de maintenance est disponible pour les événements de maintenance ultérieurs à février 2021.
Afficher les détails du niveau et du patch
Vous pouvez afficher les informations sur les patches Autonomous Database, y compris la liste des composants et problèmes résolus.
Affichage du niveau de patch pour une instance Autonomous Database
Sur la page de détails de la console Autonomous Database Oracle Cloud Infrastructure, vous pouvez visualiser le niveau de patch de l'instance.
- Dans l'onglet Informations sur Autonomous Database, la zone Maintenance affiche le niveau de patch de l'instance. Les choix sont : régulier et précoce.
- Pour modifier ce niveau, cliquez sur Modifier.
Pour plus d'informations, reportez-vous à Définition du niveau de patch.
La vue DBA_CLOUD_PATCH_INFO
fournit des informations sur les patches liés aux bogues signalés (liste des bogues signalés par un client). Vous pouvez utiliser ces informations pour déterminer si un bug que vous avez signalé est résolu et pour déterminer la version du patch dans laquelle le correctif a été appliqué à votre instance Autonomous Database. S'il n'y avait aucun bogue client dans un patch, DBA_CLOUD_PATCH_INFO
n'inclut aucune ligne pour ce patch.
Pour afficher les informations relatives à un patch spécifique, procédez comme suit :
Pour afficher les informations sur les patches disponibles, procédez comme suit :
SELECT * FROM DBA_CLOUD_PATCH_INFO;
Remarques relatives à l'affichage des informations sur les patches :
-
La vue
DBA_CLOUD_PATCH_INFO
est disponible pour l'utilisateur ADMIN. -
Les informations sur les patches et les détails sur les problèmes résolus sont disponibles à partir du patch
ADBS-21.7.1.1
(à partir de juillet 2021). -
La vue
DBA_CLOUD_PATCH_INFO
se compose des colonnes suivantes :BUG_NUM, BUG_TITLE, COMPONENT_NAME, PATCH_VERSION
Pour plus d'informations sur les patches appliqués lors de la maintenance, reportez-vous à Affichage des notifications de statut de maintenance.
Définition du niveau de patch
Lorsque vous provisionnez ou clonez une instance Autonomous Database, vous pouvez sélectionner un niveau de patch à appliquer aux patches à venir. Vous pouvez également modifier le niveau de patch après le provisionnement d'une instance Autonomous Database. Il existe deux options de niveau de patch : Normal et Anticipé.
Si vous sélectionnez le niveau de patch Anticipé, les patches sont appliqués à l'instance Autonomous Database une semaine avant la programmation de patch Normal. Le champ Next Maintenance de la console Oracle Cloud Infrastructure reflète la date et l'heure d'une fenêtre de maintenance en fonction du niveau de patch.
Le niveau de patch par défaut pour le provisionnement d'une instance Autonomous Database est Standard. Le niveau de patch par défaut pour le clonage est celui indiqué pour la base de données source.
Le provisionnement ou le clonage d'une instance et la définition du niveau de patch sur Anticipé vous permettent d'utiliser et de tester les patches à venir avant qu'ils ne soient appliqués à tous les systèmes. Oracle vous recommande de sélectionner le niveau de patch Anticipé pour vos bases de données de développement et de test si vous souhaitez tester les patches à venir avant qu'ils n'atteignent la production. Vous pouvez également tester vos charges globales à l'aide d'Oracle Real Application Testing pour capturer une charge globale sur un système de production et la réexécuter avec le niveau de patch Anticipé. Pour plus d'informations, reportez-vous à Test des charges globales avec Oracle Real Application Testing.
La définition du niveau de patch n'est disponible que sur une instance Autonomous Database qui utilise le modèle de calcul ECPU.
-
Si vous provisionnez une nouvelle instance, suivez les instructions de provisionnement et sélectionnez le niveau de patch : Normal ou Anticipé. Pour plus d'informations sur le provisionnement d'une instance Autonomous Database.
-
Si vous clonez une instance, suivez les instructions de clonage et sélectionnez un niveau de patch : Normal ou Anticipé. Pour plus d'informations, reportez-vous à Clonage d'une instance Autonomous Database.
Pour modifier le niveau de patch d'une instance Autonomous Database existante, procédez comme suit :
- Sur la page Détails de l'instance Autonomous Database, sous Gestion, dans le champ Niveau de patch, cliquez sur Modifier.
Remarque
Le bouton Modifier peut être désactivé dans les cas suivants :- Si le niveau de patch anticipé n'est pas disponible dans votre région pour votre version de base de données.
- Si Autonomous Data Guard est activé pour votre base de données.
- Si votre base de données est au niveau de patch anticipé et qu'il n'est pas possible de la déplacer vers le niveau de patch standard. Dans ce cas, réessayez après la fenêtre de maintenance suivante.
- Sélectionnez le niveau de patch, Normal ou Anticipé, puis cliquez sur Soumettre.
Le temps nécessaire pour modifier le niveau de patch dépend de la taille de la base de données. Vous pouvez voir de brèves coupures de connexion pendant cette période.
Signalement des problèmes de patch au support technique Oracle
Lorsque vous signalez un problème pour une base de données de niveau de patch Anticipé, le support technique Oracle prend les mesures nécessaires pour empêcher la propagation du problème vers des bases de données de niveau de patch standard. Voici quelques exemples d'actions possibles :
-
Le patch à l'origine du problème est supprimé avant l'application des patches aux bases de données de niveau patch standard.
-
Le patch à l'origine du problème est désactivé à l'aide des paramètres de base de données lorsqu'il est appliqué aux bases de données de niveau patch standard.
-
L'application de patches aux bases de données de niveau patch standard est suspendue jusqu'à ce que des mesures correctives soient prises.
Si vous rencontrez un problème lors du rapport, enregistrez une demande de service auprès du assistance technique Oracle Cloud ou contactez un représentant du support technique.
Oracle fournit un objectif de niveau de service de zéro régression dans votre base de données de production. Pour plus d'informations, voir Objectif de niveau de service à progression zéro.
Remarques relatives au niveau d'application de patches :
-
L'option permettant de définir le niveau de patch n'est pas disponible dans toutes les régions. Dans certaines régions, toutes les instances Autonomous Database sont provisionnées ou clonées au niveau de patch Standard.
-
Autonomous Data Guard est disponible uniquement pour les instances avec le niveau de patch Normal. Lorsque vous configurez une instance Autonomous Database avec le niveau de patch Anticipé, vous ne pouvez pas activer Autonomous Data Guard.
-
Les instances Autonomous Database Toujours gratuit ne fournissent pas l'option de niveau de patch Anticipé.
-
Lorsque le niveau de patch d'une instance Autonomous Database source est Normal, dans les régions qui prennent en charge le niveau de patch Anticipé, vous pouvez définir le niveau de patch d'un clone sur Anticipé.
Afficher les notifications de statut de maintenance
La vue DB_NOTIFICATIONS
stocke des informations sur les notifications de statut de maintenance pour votre instance Autonomous Database.
Pour afficher les informations sur les notifications, procédez comme suit :
Voici des détails sur les valeurs du champ DESCRIPTION
.
-
L'exécution de maintenance est terminée : indique que la maintenance est terminée.
MAINTENANCE_STATUS
affiche la valeurCOMPLETED
avec les heures de début et de fin de la maintenance terminée dansACTUAL_START_DATE
etACTUAL_END_DATE
. -
L'exécution de maintenance est programmée pour l'instance : indique qu'une nouvelle maintenance a été programmée.
MAINTENANCE_STATUS
affiche la valeurSCHEDULED
avec les heures de début et de fin attendues pour la maintenance programmée dansEXPECTED_START_DATE
etEXPECTED_END_DATE
. -
L'exécution de maintenance a commencé : indique que la maintenance est en cours et fournit l'horodatage de début de la maintenance active.
MAINTENANCE_STATUS
affiche la valeurIN_PROGRESS
etACTUAL_START_DATE
stocke l'horodatage de début.
Le tableau suivant présente les colonnes et les types de données de DB_NOTIFICATIONS
.
Colonne | Type de données | Description |
---|---|---|
TYPE |
VARCHAR2(128) |
Spécifie le type de notification. Valeur valide : |
TIME |
TIMESTAMP(6) WITH TIME ZONE |
Heure d'ajout de l'entrée de notification. |
EXPECTED_START_DATE |
TIMESTAMP(6) WITH TIME ZONE |
Heure de début programmée de la maintenance. |
EXPECTED_END_DATE |
TIMESTAMP(6) WITH TIME ZONE |
Heure de fin programmée de la maintenance. |
ACTUAL_START_DATE |
TIMESTAMP(6) WITH TIME ZONE |
Heure de début réelle de maintenance. |
ACTUAL_END_DATE |
TIMESTAMP(6) WITH TIME ZONE |
Heure de fin réelle de la maintenance. |
MAINTENANCE_PRODUCT |
VARCHAR2(128) |
Produit/composant pour lequel la maintenance est programmée/en cours. |
MAINTENANCE_STATUS |
VARCHAR2(128) |
Statut en cours de la maintenance. |
DESCRIPTION
|
VARCHAR2(128) |
Détail du message de notification. |
PATCH_ID |
VARCHAR2(128) |
Version de patch. |
Meilleures pratiques pour maintenir la disponibilité des applications pendant les fenêtres de maintenance
Fournit des informations sur les meilleures pratiques pour maintenir la disponibilité des applications et pour minimiser les perturbations des applications pendant une fenêtre de maintenance programmée.
Les patches Autonomous Database sont appliqués pendant une fenêtre de maintenance programmée en tant que patches non simultanés. A l'aide de patches non simultanés, votre instance Autonomous Database est disponible sur les nouveaux noeuds de cluster avant le démarrage de l'application de patches sur les noeuds d'origine sur lesquels elle était exécutée. Une fois la base de données disponible sur les nouveaux noeuds de cluster, toutes les nouvelles connexions sont dirigées vers les nouveaux noeuds. Cela signifie que la base de données reste en ligne et disponible pendant la maintenance et que les nouvelles demandes de connexion à la base de données réussiront pendant la fenêtre de maintenance.
Les connexions de base de données existantes sur les noeuds d'origine risquent d'être purgées pendant 5 minutesRéinitialisation 1. Pendant la période de purge, la base de données attend que le client libère les connexions existantes. Après la période de purge, s'il reste des connexions de base de données sur les noeuds d'origine, les connexions restantes sont déconnectées et l'application de patches démarre. Les meilleures pratiques suivantes peuvent vous aider à vous assurer que les connexions de base de données sont purgées pendant la période de purge et reconnectées aux nouveaux noeuds, afin que les applications ne voient pas d'interruptions pendant une fenêtre de maintenance.
Utilisation d'un pool de connexions et renvoi de connexions au pool
Il est recommandé d'utiliser un pool de connexions pour masquer la maintenance programmée de l'application. L'exécution d'une application pendant la fenêtre de maintenance n'a aucun impact sur une application lorsque l'application effectue les opérations suivantes :
- Utilise un pool de connexions avec les paramètres recommandés.
- Extrait une connexion du pool de connexions.
- Utilise la connexion pendant moins de temps de vidange (5 minutes).
- Renvoie la connexion au pool de connexions.
La meilleure pratique pour une application qui utilise un pool de connexions consiste à suivre ces étapes. L'application extrait une connexion, utilise la connexion pour le traitement de la base de données, puis libère la connexion au pool de connexions immédiatement lorsque le travail est terminé (ce qui rend la connexion disponible pour utilisation par d'autres threads).
Lorsque la période de purge démarre, le pool de connexions gère le rétablissement des connexions disponibles dans le pool de connexions afin que les nouvelles connexions se connectent aux nouveaux noeuds disponibles. Lorsqu'une application extrait une nouvelle connexion, elle ne voit aucune interruption (les nouvelles connexions utilisent les nouveaux noeuds). Toutefois, si une connexion est extraite avant le début de la maintenance ou pendant le temps de vidange et qu'elle effectue un traitement qui se poursuit pendant plus de temps de vidange, la connexion est déconnectée. Dans ce cas, pour éviter les interruptions, vous pouvez arrêter ces opérations longues avant le démarrage de la maintenance et les redémarrer à la fin de la maintenance. Pour savoir quand arrêter et quand redémarrer des opérations à longue durée d'exécution, vous pouvez vous abonner à des événements, comme expliqué dans la section suivante, "S'abonner à des événements d'information".
Le tableau suivant présente certains types de pool de connexions courants, ainsi que les versions et paramètres recommandés.
Pool de connexions | Version | Version de pilote JDBC Oracle | Paramètres recommandés |
---|---|---|---|
Pool de connexions universel (UCP) | 23ai | 23ai | Utilisez les paramètres par défaut. |
Pool de connexions universel (UCP) | 19.12 ou plus tard | 19.13 ou plus tard | ValidateConnectionOnBorrow=true
Ajoutez |
Weblogic | 14.1.1 ou plus tard | 19.13 ou plus tard |
Appliquez le patch pour ce bug 35731335. Pour plus d'informations, reportez-vous à Patch 35731335. |
Hikari | 6.0.0 ou plus tard | 19.21 ou plus tard |
Définissez Définissez Définissez |
Tomcat | 9.0, 10.0, ou 11.0 | N'importe quelle version |
Si vous utilisez Tomcat avec UCP, suivez les recommandations UCP ci-dessus. Si vous utilisez Tomcat avec le pilote JDBC, appelez une API de purge JDBC Oracle : Définissez |
Utiliser des tests de connexion sur le pilote JDBC si vous ne pouvez pas utiliser un pool de connexions
Si vous ne pouvez pas utiliser un pool de connexions, les pilotes client Oracle 19.13 (ou version ultérieure) peuvent purger les connexions afin que votre application ne voie pas d'interruptions. Pour vous assurer que les connexions sont correctement purgées, vous pouvez appeler n'importe quelle API de purge JDBC Oracle : isValid()
, isUsable()
, pingDatabase()
ou endRequest()
.
S'abonner aux événements d'information
Si votre application a des opérations de base de données à longue durée d'exécution qui s'exécutent pendant plus de 5 minutes, le pool ou le pilote JDBC ne peut pas purger les connexions, car elles ne seront pas libérées avant la fin du temps de purge. Pour les opérations à longue durée d'exécution, vous ne devez pas démarrer les processus et les travaux pendant ou juste avant une fenêtre de maintenance.
Autonomous Database publie des événements d'information dans le service OCI Events pour vous informer des fenêtres de maintenance, y compris les événements d'information suivants (avec la catégorie d'événement Maintenance) :
- Lorsqu'une nouvelle fenêtre de maintenance est programmée
- 24 heures avant le début de l'application de patches
- 60 minutes avant le début de l'application de patches
- Au démarrage de l'application de patches
- A la fin de l'application de patches
Vous pouvez vous abonner aux événements d'informations Autonomous Database, et éventuellement indiquer la maintenance de la catégorie d'événements, pour recevoir des notifications et limiter les notifications que vous recevez aux événements de maintenance. Ensuite, en fonction de la notification et des règles que vous définissez, vous pouvez prendre des mesures pour arrêter les opérations à longue durée d'exécution et les redémarrer après la fin de la maintenance. Même si les fenêtres de maintenance annoncées durent généralement 2 heures, l'application de patches se fait en 5 à 10 minutes pendant cette fenêtre. A l'aide de ces événements et de vos connaissances sur les opérations à longue durée d'exécution, vous pouvez déterminer quand arrêter les opérations à longue durée d'exécution et quand les redémarrer.
Pour plus d'informations, reportez-vous à Utilisation des événements Autonomous Database.
Gérer l'état d'une session PL/SQL si votre application utilise PL/SQL
Le paramètre de base de données SESSION_EXIT_ON_PACKAGE_STATE_ERROR
indique la gestion d'un package PL/SQL avec conservation de statut exécuté dans une session. Lorsqu'un tel package est modifié, par exemple lors de la maintenance planifiée des objets fournis par Oracle, les sessions qui ont une instanciation active du package reçoivent l'erreur suivante lorsqu'elles tentent d'exécuter le package : ORA-04068: existing state of packages has been discarded.
. Toutefois, le code d'application qui reçoit l'erreur ORA-4068
peut ne pas être équipé pour gérer cette erreur avec sa logique de nouvelle tentative.
La définition de SESSION_EXIT_ON_PACKAGE_STATE_ERROR
sur TRUE
offre un traitement différent pour ce cas. Lorsque SESSION_EXIT_ON_PACKAGE_STATE_ERROR
est défini sur TRUE
, au lieu de générer simplement l'erreur ORA-4068
lorsque l'état du package est supprimé, la session se ferme immédiatement. Cela peut être avantageux car de nombreuses applications peuvent gérer la terminaison de session en rétablissant automatiquement et de manière transparente la connexion.
Pour plus d'informations, reportez-vous à SESSION_EXIT_ON_PACKAGE_STATE_ERROR.
Légende de la note de bas de page
Note de bas de page 1 : Notez que ce temps de vidange peut changer dans les versions futures.