Migrer Oracle E-Business Suite vers Amazon Custom RDS - Recommandations AWS

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.

Migrer Oracle E-Business Suite vers Amazon Custom RDS

Créé par Simon Cunningham (AWS), Jaydeep Nandy (), Nitin Saxena (AWS) et Vishnu Vinnakota (AWS) AWS

Environnement : Production

Source : Amazon EC2 ou sur site

Cible : Amazon RDS Custom

Type R : Replateforme

Charge de travail : Oracle

Technologies : migration ; bases de données ; infrastructure

AWSservices : Amazon EFS ; Amazon RDS ; AWS Secrets Manager

Récapitulatif

Oracle E-Business Suite est une solution de planification des ressources d'entreprise (ERP) permettant d'automatiser les processus à l'échelle de l'entreprise tels que les finances, les ressources humaines, les chaînes d'approvisionnement et la fabrication. Il possède une architecture à trois niveaux : client, application et base de données. Auparavant, vous deviez exécuter votre base de données Oracle E-Business Suite sur une instance Amazon Elastic Compute Cloud EC2 (Amazon) autogérée, mais vous pouvez désormais bénéficier d'Amazon Relational Database Service (Amazon) Custom. RDS  

Amazon RDS Custom for Oracle est un service de base de données géré pour les applications existantes, personnalisées et packagées qui nécessitent un accès au système d'exploitation et à l'environnement de base de données sous-jacents. Il automatise les tâches et les opérations d'administration des bases de données tout en vous permettant, en tant qu'administrateur de base de données, d'accéder à votre environnement de base de données et de votre système d'exploitation et de les personnaliser. Lorsque vous migrez votre base de données Oracle vers Amazon RDS Custom, Amazon Web Services (AWS) prend en charge les tâches les plus lourdes, telles que les tâches de sauvegarde et garantit la haute disponibilité, tandis que vous pouvez vous concentrer sur la maintenance de l'application et des fonctionnalités de votre suite Oracle E-Business. Pour connaître les principaux facteurs à prendre en compte lors d'une migration, consultez les stratégies de migration des bases de données Oracle dans les AWS directives prescriptives.

Ce modèle se concentre sur les étapes de migration d'une base de données Oracle autonome sur Amazon EC2 vers Amazon RDS Custom en utilisant une sauvegarde Oracle Recovery Manager (RMAN) et un système de fichiers partagé Amazon Elastic File System (AmazonEFS) entre l'EC2instance et Amazon RDS Custom. Le modèle utilise une sauvegarde RMAN complète (parfois appelée sauvegarde de niveau 0).  Pour des raisons de simplicité, il utilise une sauvegarde à froid dans laquelle l'application est arrêtée et la base de données est montée et non ouverte. (Vous pouvez également utiliser Oracle Data Guard ou la RMAN duplication pour la sauvegarde. Toutefois, ce modèle ne couvre pas ces options.)

Pour plus d'informations sur l'architecture d'Oracle E-Business Suite AWS pour la haute disponibilité et la reprise après sinistre, consultez le modèle Configurer une architecture HA/DR pour Oracle E-Business Suite sur RDS Amazon Custom avec une base de données de secours active.

Remarque : Ce modèle fournit des liens vers les notes de support Oracle. Vous avez besoin d'un compte Oracle Support pour accéder à ces documents.

Conditions préalables et limitations

Prérequis

  • Une base de données source Oracle version 12.1.0.2 ou 19c (minimum 19.3) exécutée sur Amazon EC2 avec Oracle Linux 7 ou Red Hat Enterprise Linux () RHEL version 7.x. Ce modèle suppose que le nom de la base de données source est VIS le même que celui de la base de données conteneur supplémentaire pour Oracle 19cVISCDB, mais vous pouvez utiliser d'autres noms.

    Remarque : vous pouvez également utiliser ce modèle avec les bases de données source Oracle locales, à condition de disposer de la connectivité réseau appropriée entre le réseau local et Amazon Virtual Private Cloud (Amazon VPC).

  • Une application Oracle E-Business Suite version 12.2.x (instance de vision). Cette procédure a été testée sur la version 12.2.11.

  • Un seul niveau d'application Oracle E-Business Suite. Toutefois, vous pouvez adapter ce modèle pour qu'il fonctionne avec plusieurs niveaux d'application.

  • Pour Oracle 12.1.0.2, Amazon RDS Custom a été configuré avec au moins 16 Go d'espace de swap. Dans le cas contraire, le CD 12c Examples affiche un avertissement. (Oracle 19c ne nécessite pas le CD d'exemples, comme indiqué plus loin dans ce document.)

Effectuez les étapes suivantes avant de commencer votre migration :

  1. Sur la RDS console Amazon, créez une instance de base de données Amazon RDS Custom pour Oracle avec le nom de la base de données VIS (ou le nom de votre base de données source). Pour obtenir des instructions, consultez Working with Amazon RDS Custom dans la AWS documentation et le billet de blog Amazon RDS Custom for Oracle — New Control Capabilities in Database Environment. Cela garantit que le nom de la base de données est le même que celui de la base de données source. (Si ce champ est laissé vide, le nom de l'EC2instance et de la base de données sera défini surORCL.)  Assurez-vous de créer votre version de moteur personnalisée (CEV) avec au minimum les correctifs qui ont été appliqués à la source. Pour plus d'informations, consultez la section Préparation à la création d'un CEV dans la RDS documentation Amazon.

    Remarque pour Oracle 19c : Actuellement, pour Oracle 19c, le nom de la base de données de RDS conteneurs Amazon peut être personnalisé. L’argument par défaut est RDSCDB. Assurez-vous de créer l'instance Oracle RDS personnalisée avec le même ID système (SID) que celui de l'EC2instance source. Par exemple, dans ce modèle, l'Oracle 19c SID est supposé se trouver VISCDB sur l'instance source. Par conséquent, l'Oracle 19c cible SID sur Amazon RDS Custom doit également l'être. VISCDB

  2. Configurez l'instance de base de données Amazon RDS Custom avec suffisamment de stockageCPU, de v et de mémoire pour correspondre à la base de données EC2 source Amazon.  Pour ce faire, vous pouvez faire correspondre les types d'EC2instances Amazon en fonction de v CPU et de mémoire. 

  3. Créez un système de EFS fichiers Amazon et installez-le sur les instances Amazon EC2 et Amazon RDS Custom.  Pour obtenir des instructions, consultez le billet de EFS blog Integrate Amazon RDS Custom for Oracle with Amazon. Ce modèle suppose que vous avez monté le EFS volume Amazon à la fois /RMAN sur les instances de base de données Amazon RDS Custom source EC2 et cible, et que la connectivité réseau est possible entre la source et la cible. Vous pouvez également utiliser la même méthode en utilisant Amazon FSx ou n'importe quel lecteur partagé.

Hypothèses

Ce modèle suppose que votre application et votre base de données utilisent des noms d'hôte logiques, ce qui réduit le nombre d'étapes de migration. Vous pouvez ajuster ces étapes pour utiliser des noms d'hôtes physiques, mais les noms d'hôtes logiques réduisent la complexité du processus de migration. Pour plus d'informations sur les avantages liés à l'utilisation de noms d'hôtes logiques, consultez les notes d'assistance suivantes :

  • Pour 12c, note de support Oracle 2246690.1

  • Pour 19c, note de support Oracle 2617788.1

Ce modèle ne couvre pas le scénario de mise à niveau d'Oracle 12c vers 19c et se concentre sur la migration de la même version de la base de données Oracle exécutée sur Amazon vers EC2 Amazon RDS Custom for Oracle.

Amazon RDS Custom pour Oracle prend en charge la personnalisation d'Oracle Home. (Oracle Home stocke les fichiers binaires Oracle.) Vous pouvez remplacer le chemin par défaut par un chemin que vous spécifiez, tel que/d01/oracle/VIS/19c. /rdsdbbin/oracle Pour des raisons de simplicité, les instructions de ce modèle utilisent le chemin par défaut/rdsdbbin/oracle.

Limites

Ce modèle ne prend pas en charge les fonctionnalités et configurations suivantes :

  • Définition du ARCHIVE_LAG_TARGET paramètre de base de données sur une valeur située en dehors de la plage de 60 à 7 200

  • Désactivation du mode journal de l'instance de base de données () NOARCHIVELOG 

  • Désactiver l'EBS-optimizedattribut de l'EC2instance

  • Modification des volumes Amazon Elastic Block Store (AmazonEBS) d'origine attachés à l'EC2instance

  • Ajouter de nouveaux EBS volumes ou modifier le type de volume gp2 de gp3

  • Support pour l'TNSifile

  • Modification de l'control_fileemplacement et du nom (ça doit être le cas/rdsdbdata/db/VISCDB_A/controlfile/control-01.ctl, où VISCDB est le CDB nom)

Pour plus d'informations sur ces configurations et sur d'autres configurations non prises en charge, consultez la section Corriger les configurations non prises en charge dans la documentation AmazonRDS.

Versions du produit

Pour les versions de base de données Oracle et les classes d'instances prises en charge par Amazon RDS Custom, consultez Disponibilité et exigences d'Amazon RDS Custom pour Oracle.

Architecture

Le schéma d'architecture suivant représente un système Oracle E-Business Suite exécuté dans une seule zone de disponibilité surAWS. Le niveau application est accessible via un Application Load Balancer, l'application et les bases de données se trouvent dans des sous-réseaux privés, et le niveau Amazon Custom RDS et Amazon EC2 Database utilise un système de fichiers EFS partagé Amazon pour stocker et accéder aux fichiers de RMAN sauvegarde.

Architecture pour E-Business Suite dans une zone de disponibilité unique sur AWS

Outils

AWSservices

  • Amazon RDS Custom for Oracle est un service de base de données géré pour les applications existantes, personnalisées et packagées qui nécessitent un accès au système d'exploitation et à l'environnement de base de données sous-jacents. Il automatise les tâches et les opérations d'administration des bases de données tout en vous permettant, en tant qu'administrateur de base de données, d'accéder à votre environnement de base de données et de votre système d'exploitation et de les personnaliser. 

  • Amazon Elastic File System (AmazonEFS) est un système de fichiers élastique simple, sans serveur, permettant d'ajouter et de supprimer des fichiers sans qu'il soit nécessaire de les gérer ou de les approvisionner. Ce modèle utilise un système de fichiers EFS partagé Amazon pour stocker et accéder aux fichiers RMAN de sauvegarde.

  • AWSSecrets Manager est un service AWS géré qui vous permet de faire pivoter, de gérer et de récupérer facilement les informations d'identification, API les clés et autres informations secrètes de la base de données. Amazon RDS Custom stocke la paire de clés et les informations d'identification de l'utilisateur de la base de données dans Secrets Manager lors de la création de la base de données. Dans ce modèle, vous récupérez les mots de passe des utilisateurs de la base de données à partir de Secrets Manager pour créer les ADMIN utilisateurs RDSADMIN et pour modifier les mots de passe système et système.

Autres outils

  • RMANest un outil qui fournit un support de sauvegarde et de restauration pour les bases de données Oracle. Ce modèle est utilisé RMAN pour effectuer une sauvegarde à froid de la base de données Oracle source sur Amazon EC2 qui est restaurée sur Amazon RDS Custom.

Bonnes pratiques

  • Utilisez des noms d'hôtes logiques. Cela réduit considérablement le nombre de scripts post-clonage que vous devez exécuter. Pour plus d'informations, consultez la note de support Oracle 2246690.1.

  • Amazon RDS Custom utilise Oracle Automatic Memory Management (AMM) par défaut.  Si vous souhaitez utiliser le noyau hugemem, vous pouvez configurer Amazon RDS Custom pour utiliser la gestion automatique de la mémoire partagée (ASMM) à la place.

  • Laissez le memory_max_target paramètre activé par défaut. Le framework utilise ce paramètre en arrière-plan pour créer des répliques de lecture.

  • Activez la base de données Oracle Flashback. Cette fonctionnalité est utile dans les scénarios de test de basculement (et non de commutation) afin de rétablir le mode veille.

  • Pour les paramètres d'initialisation de la base de données, personnalisez la norme fournie par l'instance de base de données Amazon RDS Custom pour Oracle E-Business Suite au lieu d'utiliser PFILE celle de la base SPFILE de données source Oracle. Cela est dû au fait que les espaces blancs et les commentaires posent problème lors de la création de répliques de lecture dans Amazon RDS Custom. Pour plus d'informations sur les paramètres d'initialisation de la base de données, consultez la note de support Oracle 396009.1.

Dans la section Epics suivante, nous avons fourni des instructions distinctes pour Oracle 12.1.0.2 et 19c, où les détails diffèrent.

Épopées

TâcheDescriptionCompétences requises

Arrêtez l'application.

Pour arrêter l'application source, utilisez les commandes suivantes : 

$ su - applmgr $ cd $INST_TOP/admin/scripts $ ./adstpall.sh
DBA

Créez le fichier .zip.

Créez le appsutil.zip fichier au niveau de l'application source. Vous utiliserez ce fichier ultérieurement pour configurer le nœud de base de données Amazon RDS Custom.

$ perl $AD_TOP/bin/admkappsutil.pl
DBA

Copiez le fichier .zip sur AmazonEFS.

Copiez appsutil.zip depuis $INST_TOP/admin/out votre EFS volume Amazon partagé (/RMAN/appsutil). Vous pouvez transférer le fichier manuellement à l'aide de Secure Copy (SCP) ou d'un autre mécanisme de transfert.

DBA
TâcheDescriptionCompétences requises

Pré-clonez le niveau de base de données sur AmazonEC2.

Connectez-vous en tant qu'utilisateur Oracle et exécutez :

$ cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME $ perl adpreclone.pl dbTier

Vérifiez le fichier journal généré pour confirmer que l'opération s'est terminée correctement.

DBA

Copiez le fichier appsutil.zip dans le système de EFS fichiers Amazon partagé.

Créez une sauvegarde tar et $ORACLE_HOME/appsutil copiez-la dans le système de EFS fichiers Amazon partagé (par exemple,/RMAN/appsutil) :

$ cd $ORACLE_HOME $ tar cvf sourceappsutil.tar appsutil $ cp sourceappsutil.tar /RMAN/appsutil
DBA
TâcheDescriptionCompétences requises

Créez un script de sauvegarde.

Effectuez une sauvegarde RMAN complète de la base de données source sur le système de EFS fichiers Amazon partagé.

Pour des raisons de simplicité, ce modèle effectue une RMAN sauvegarde à froid. Vous pouvez toutefois modifier ces étapes pour effectuer une RMAN sauvegarde à chaud avec Oracle Data Guard afin de réduire les temps d'arrêt.

1. Démarrez la base de EC2 données Amazon source en mode montage :

$ sqlplus / as sysdba $ SQL> shutdown immediate $ SQL> startup mount

2. Créez un script de RMAN sauvegarde (utilisez l'un des exemples suivants, selon votre version d'Oracle, ou exécutez l'un de vos RMAN scripts existants) pour sauvegarder la base de données sur le système de EFS fichiers Amazon que vous avez monté (/RMANdans cet exemple).

Pour Oracle 12.1.0.2 :

$ vi FullRMANColdBackup.sh #!/bin/bash . /home/oracle/.bash_profile export ORACLE_SID=VIS export ORACLE_HOME=/d01/oracle/VIS/12.1.0 export DATE=$(date +%y-%m-%d_%H%M%S) rman target / log=/RMAN/VISDB_${DATE}.log << EOF run { allocate channel ch1 device type disk format '/RMAN/visdb_full_bkp_%u'; allocate channel ch2 device type disk format '/RMAN/visdb_full_bkp_%u'; crosscheck backup; delete noprompt obsolete; BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG; backup archivelog all; release channel ch1; release channel ch2; } EOF

Pour Oracle 19c :

$ vi FullRMANColdBackup.sh #!/bin/bash . /home/oracle/.bash_profile export ORACLE_SID=VISCDB export ORACLE_HOME=/d01/oracle/VIS/19c export DATE=$(date +%y-%m-%d_%H%M%S) rman target / log=/RMAN/VISDB_${DATE}.log << EOF run { allocate channel ch1 device type disk format '/RMAN/visdb_full_bkp_%u'; allocate channel ch2 device type disk format '/RMAN/visdb_full_bkp_%u'; crosscheck backup; delete noprompt obsolete; BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG; backup archivelog all; backup current controlfile format '/RMAN/cntrl.bak'; release channel ch1; release channel ch2; } EOF
DBA

Exécutez le script de sauvegarde.

Modifiez les autorisations, connectez-vous en tant qu'utilisateur Oracle et exécutez le script :

$ chmod 755 FullRMANColdBackup.sh $ ./FullRMANColdBackup.sh
DBA

Vérifiez les erreurs et notez le nom du fichier de sauvegarde.

Vérifiez la présence d'erreurs dans le fichier RMAN journal. Si tout semble correct, listez la sauvegarde du fichier de contrôle. Notez le nom du fichier de sortie.

Pour Oracle 12.1.0.2 :

RMAN> connect target / RMAN> list backup of controlfile; BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 9 Full 1.11M DISK 00:00:04 23-APR-22 BP Key: 9 Status: AVAILABLE Compressed: YES Tag: TAG20220423T121011 Piece Name: /RMAN/visdb_full_bkp_100rlsbt Control File Included: Ckp SCN: 12204595396727 Ckp time: 23-APR-22

Vous utiliserez le fichier de sauvegarde /RMAN/visdb_full_bkp_100rlsbt ultérieurement, lorsque vous restaurez la base de données sur Amazon RDS Custom.

Pour Oracle 19c :

RMAN> connect target / RMAN> list backup of controlfile; BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 38 Full 17.92M DISK 00:00:01 25-NOV-22 BP Key: 38 Status: AVAILABLE Compressed: NO Tag: TAG20221125T095014 Piece Name: /RMAN/cntrl.bak Control File Included: Ckp SCN: 12204620188873 Ckp time: 23-NOV-22

Vous utiliserez le fichier de sauvegarde /RMAN/cntrl.bak ultérieurement, lorsque vous restaurez la base de données sur Amazon RDS Custom.

DBA
TâcheDescriptionCompétences requises

Modifiez le fichier hosts et définissez le nom d'hôte.

Remarque : Les commandes de cette section doivent être exécutées en tant qu'utilisateur root.

1. Modifiez le /etc/hosts fichier sur l'instance de base de données Amazon RDS Custom. Pour ce faire, une méthode simple consiste à copier les entrées de la base de données et de l'hôte de l'application à partir du fichier source des hôtes EC2 de base de données Amazon.

<IP-address> OEBS-app01.localdomain OEBS-app01 OEBS-app01log.localdomain OEBS-app01log <IP-address> OEBS-db01.localdomain OEBS-db01 OEBS-db01log.localdomain OEBS-db01log

où se <IP-address> trouve l'adresse IP du nœud de base de données, que vous devez remplacer par l'adresse IP RDS personnalisée Amazon. Les noms d'hôtes logiques sont ajoutés à. *log

2. Modifiez le nom d'hôte de la base de données en exécutant la hostnamectl commande suivante : 

$ sudo hostnamectl set-hostname --static persistent-hostname

Par exemple :

$ sudo hostnamectl set-hostname --static OEBS-db01log

Pour plus d'informations, consultez l'article du centre de connaissances sur l'attribution de noms d'hôtes statiques.

3. Redémarrez l'instance de base de données Amazon RDS Custom.  Ne vous inquiétez pas de fermer la base de données, car vous la supprimerez ultérieurement.

$ reboot

4. Lorsque l'instance de base de données Amazon RDS Custom revient, connectez-vous et vérifiez que le nom d'hôte a changé : 

$ hostname oebs-db01
DBA

Installez le logiciel Oracle E-Business Suite.

Installez la suite Oracle E-Business recommandée sur le site RPMs d'origine d'Oracle sur l'instance de base de données Amazon RDS Custom. Pour plus de détails, consultez la note de support Oracle #1330701 .1. Voici une liste partielle. La RPM liste change pour chaque version. Vérifiez donc que toutes les versions requises RPMs sont installées.

En tant qu'utilisateur root, exécutez :

$ sudo yum -y update $ sudo yum install -y elfutils-libelf-devel* $ sudo yum install -y libXp-1.0.2-2.1*.i686 $ sudo yum install -y libXp-1.0.2-2.1* $ sudo yum install -y compat-libstdc++-*

Vérifiez que tous les correctifs requis sont installés avant de passer à l'étape suivante.

DBA

Installez le VNC serveur.

Remarque : vous pouvez omettre cette étape pour Oracle 19c car le CD Examples n'est plus nécessaire ; consultez la note de support Oracle 2782085.1.

Pour Oracle 12.1.0.2 :

Installez le VNC serveur et les packages de bureau qui en dépendent. Il s'agit d'une condition requise pour installer le CD d'exemples 12c à l'étape suivante.

1. En tant qu'utilisateur root, exécutez :

$ sudo yum install -y tigervnc-server $ sudo yum install -y *kde* $ sudo yum install -y *xorg*

2. Démarrez le VNC serveur pour rdsdb l'utilisateur et définissez le mot de passe pour VNC :

$ su - rdsdb $ vncserver :1 $ vncpassword
DBA

Installez le CD 12c Examples.

Remarque : vous pouvez omettre cette étape pour Oracle 19c car le CD Examples n'est plus nécessaire ; consultez la note de support Oracle 2782085.1.

Pour Oracle 12.1.0.2 :

1. Téléchargez les fichiers d'installation depuis https://edelivery.oracle.com/.  Pour Oracle E-Business Suite 12.2.11 — Oracle Database 12c version 1 (12.1.0.2), recherchez Examples for Linux x86-64 V100102-01.zip.

2. Créez un répertoire pour stocker le CD Examples :

$ mkdir /RMAN/12cexamples

3. Copiez le fichier .zip du CD Examples dans ce répertoire en utilisant le mécanisme de transfert de votre choix (par exemple,SCP) :

V100102-01.zip

4. Changez de propriétaire pour rdsdb :

$ chown -R rdsdb:rdsdb /RMAN/12cexamples

5. En tant qu'rdsdbutilisateur, décompressez le fichier :

$ unzip V10010201.zip

6. Connectez-vous depuis un client ayant accès au VNC client et à Amazon RDS Custom. Assurez-vous que la connectivité réseau et les ports de pare-feu nécessaires sont ouverts pour autoriser l'accès àVNC. Par exemple, un VNC serveur en cours d'exécution display :1 devra ouvrir le port 5901 sur le groupe de sécurité associé à l'EC2hôte Amazon RDS Custom.

7. Accédez au répertoire dans lequel vous avez copié le CD Examples :

$ cd /RMAN/12cexamples/examples

8. Exécutez le programme d'installation.  Assurez-vous de vérifier l'emplacement du oraInst.loc fichier. 

./runInstaller -invPtrLoc /rdsdbbin/oracle.12.1.custom.r1.EE.1/oraInst.loc

9. Utilisez les paramètres suivants lors de l'installation du CD Examples :  

Skip Software Update Downloads Select Oracle Home 12.1.0.2 (Oracle Base = /rdsdbbin) (Software Location = /rdsdbbin/oracle/12.1.custom.r1.EE.1)

10. Le programme d'installation comprend cinq étapes accompagnées d'instructions.  Suivez les étapes jusqu'à ce que l'installation soit terminée. 

DBA
TâcheDescriptionCompétences requises

Suspendez le mode d'automatisation.

Vous devez suspendre le mode d'automatisation sur votre instance de base de données Amazon RDS Custom avant de passer aux étapes suivantes, afin de vous assurer que l'automatisation n'interfère pas avec l'RMANactivité.

Interrompez l'automatisation à l'aide de la AWS commande Command Line Interface (AWSCLI) suivante. (Assurez-vous d'avoir configuré le AWS CLI premier.)

aws rds modify-db-instance \ --db-instance-identifier VIS \ --automation-mode all-paused \ --resume-full-automation-mode-minute 360 \ --region eu-west-1

Lorsque vous spécifiez la durée de la pause, assurez-vous de laisser suffisamment de temps pour la RMAN restauration. Cela dépend de la taille de la base de données source. Modifiez donc la valeur 360 en conséquence.

DBA

Supprimez la base de données de départ.

Supprimez la base de données Amazon RDS Custom existante. 

En tant qu'utilisateur d'Oracle Home, exécutez les commandes suivantes. (L'utilisateur par défaut estrdsdb, sauf si vous l'avez personnalisé.)

$ sqlplus / as sysdba SQL> shutdown immediate; SQL> startup nomount restrict; SQL> alter database mount; SQL> drop database; SQL> exit
DBA

Créez des répertoires pour stocker les fichiers de base de données.

Pour Oracle 12.1.0.2 :

Créez des répertoires pour la base de données, le fichier de contrôle, les fichiers de données et le journal en ligne. Utilisez le répertoire parent du control_files paramètre dans la commande précédente (dans ce cas,VIS_A). Exécutez les commandes suivantes en tant qu'utilisateur d'Oracle Home (par défaut,rdsdb).

$ mkdir -p /rdsdbdata/db/VIS_A/controlfile $ mkdir -p /rdsdbdata/db/VIS_A/datafile $ mkdir -p /rdsdbdata/db/VIS_A/onlinelog

Pour Oracle 19c :

Créez des répertoires pour la base de données, le fichier de contrôle, les fichiers de données et le journal en ligne. Utilisez le répertoire parent du control_files paramètre dans la commande précédente (dans ce cas,VISCDB_A). Exécutez les commandes suivantes en tant qu'utilisateur d'Oracle Home (par défaut,rdsdb).

$ mkdir -p /rdsdbdata/db/cdb/VISCDB_A/controlfile $ mkdir -p /rdsdbdata/db/cdb/VISCDB_A/datafile $ mkdir -p /rdsdbdata/db/cdb/VISCDB_A/onlinelog $ mkdir -p /rdsdbdata/db/cdb/VISCDB_A/onlinelog/arch $ mkdir /rdsdbdata/db/pdb/VISCDB_A
DBA

Créez et modifiez le fichier de paramètres pour Oracle E-Business Suite.

Au cours de cette étape, vous ne copierez pas le fichier de paramètres du serveur (SPFILE) depuis la base de données source. Vous utiliserez plutôt le fichier de paramètres standard (PFILE) créé avec l'instance de base de données Amazon RDS Custom et ajouterez les paramètres dont vous avez besoin pour Oracle E-Business Suite.

Lorsque vous supprimez la base de données, Amazon RDS Automation crée une sauvegarde du init.ora fichier, qui est associée à la base de données Amazon RDS Custom. Ce fichier est appelé oracle_pfile et se trouve dans/rdsdbdata/config.

Pour Oracle 12.1.0.2 :

1. Copiez /rdsdbdata/config/oracle_pfile dans $ORACLE_HOME.

$ cp /rdsdbdata/config/oracle_pfile $ORACLE_HOME/dbs/initVIS.ora

2. Modifiez le initVIS.ora fichier sur l'instance de base de données Amazon RDS Custom. Validez tous les paramètres de la source et ajoutez les paramètres nécessaires. Pour plus de détails, consultez la note de support Oracle 396009.1.

Important : Assurez-vous qu'il n'y a aucun commentaire dans les paramètres que vous ajoutez. Les commentaires peuvent entraîner des problèmes d'automatisation, tels que la création de répliques de lecture et l'émission de point-in-time récupérations ()PITRs.

3. Ajoutez au initVIS.ora fichier des paramètres similaires aux suivants, en fonction de vos besoins :

*.workarea_size_policy='AUTO' *.plsql_code_type='INTERPRETED' *.cursor_sharing='EXACT' *._b_tree_bitmap_plans=FALSE *.session_cached_cursors=500 *.optimizer_adaptive_features=false *.optimizer_secure_view_merging=false *.SQL92_SECURITY=TRUE *.temp_undo_enabled=true _system_trig_enabled = TRUE nls_language = american nls_territory = america nls_numeric_characters = ".," nls_comp = binary nls_sort = binary nls_date_format = DD-MON-RR nls_length_semantics = BYTE aq_tm_processes = 1 _sort_elimination_cost_ratio =5 _like_with_bind_as_equality = TRUE _fast_full_scan_enabled = FALSE _b_tree_bitmap_plans = FALSE optimizer_secure_view_merging = FALSE _optimizer_autostats_job = FALSE parallel_max_servers = 8 parallel_min_servers = 0 parallel_degree_policy = MANUAL sec_case_sensitive_logon = FALSE compatible = 12.1.0 o7_dictionary_accessibility = FALSE utl_file_dir =/tmp

4. Modifier ce qui suit. Les valeurs dépendront de votre système source, alors révisez-les en fonction de votre configuration actuelle.

*.open_cursors=500 *.undo_tablespace='APPS_UNDOTS1

5. Supprimez la SPFILE référence.

*.spfile='/rdsdbbin/oracle/dbs/spfileVIS.ora'

Remarques :

  • Ne modifiez pas les valeurs fournies par Amazon RDS Custom PFILE pour control_files etdb_unique_name. Amazon RDS attend ces valeurs. Si vous vous en écartez, des problèmes se poseront si vous essayez de créer une réplique en lecture à l'avenir.

  • Amazon RDS Custom utilise la gestion automatique de la mémoire (AMM) par défaut. Si vous souhaitez utiliser hugemem, vous pouvez configurer Amazon RDS Custom pour utiliser la gestion automatique de la mémoire partagée ()ASMM.  

  • Laissez le memory_max_target paramètre activé par défaut. Le RDS framework Amazon l'utilise en arrière-plan pour créer des répliques de lecture.

6. Vérifiez que le initVIS.ora fichier ne présente aucun problème en exécutant la startup nomount commande suivante :

SQL> startup nomount pfile=/rdsdbbin/oracle/dbs/initVIS.ora; SQL> create spfile='/rdsdbdata/admin/VIS/pfile/spfileVIS.ora' from pfile; SQL> exit

7. Créez un lien symbolique pourSPFILE.

$ ln -s /rdsdbdata/admin/VIS/pfile/spfileVIS.ora $ORACLE_HOME/dbs/

Pour Oracle 19c :

1. Copiez /rdsdbdata/config/oracle_pfile dans $ORACLE_HOME.

$ cp /rdsdbdata/config/oracle_pfile $ORACLE_HOME/dbs/initVISCDB.ora

2. Modifiez le initVISCDB.ora fichier sur l'instance de base de données Amazon RDS Custom. Validez tous les paramètres de la source et ajoutez les paramètres nécessaires. Pour plus de détails, consultez la note de support Oracle 396009.1.

Important : Assurez-vous qu'il n'y a aucun commentaire dans les paramètres que vous ajoutez.  S'il y a des commentaires, ils peuvent entraîner des problèmes d'automatisation, tels que la création de répliques de lecture et l'émission de point-in-time récupérations ()PITRs.

3. Ajoutez au initVISCDB.ora fichier des paramètres similaires aux suivants, en fonction de vos besoins.

*.instance_name=VISCDB *.sec_case_sensitive_logon= FALSE *.result_cache_max_size = 600M *.optimizer_adaptive_plans =TRUE *.optimizer_adaptive_statistics = FALSE *.pga_aggregate_limit = 0 *.temp_undo_enabled = FALSE *._pdb_name_case_sensitive = TRUE *.event='10946 trace name context forever, level 8454144' *.workarea_size_policy='AUTO' *.plsql_code_type='INTERPRETED' *.cursor_sharing='EXACT' *._b_tree_bitmap_plans=FALSE *.session_cached_cursors=500 *.optimizer_secure_view_merging=false *.SQL92_SECURITY=TRUE _system_trig_enabled = TRUE nls_language = american nls_territory = america nls_numeric_characters = ".," nls_comp = binary nls_sort = binary nls_date_format = DD-MON-RR nls_length_semantics = BYTE aq_tm_processes = 1 _sort_elimination_cost_ratio =5 _like_with_bind_as_equality = TRUE _fast_full_scan_enabled = FALSE _b_tree_bitmap_plans = FALSE optimizer_secure_view_merging = FALSE _optimizer_autostats_job = FALSE parallel_max_servers = 8 parallel_min_servers = 0 parallel_degree_policy = MANUAL

4. Modifier ce qui suit. Les valeurs dépendent de votre système source, alors révisez-les en fonction de votre configuration actuelle.

*.open_cursors=500 *.undo_tablespace='UNDOTBS1'

5. Supprimez la SPFILE référence :

*.spfile='/rdsdbbin/oracle/dbs/spfileVISCDB.ora'

Remarques :

  • Ne modifiez pas les valeurs fournies par Amazon RDS Custom PFILE pour control_files etdb_unique_name. Amazon RDS attend ces valeurs. Si vous vous en écartez, des problèmes se poseront si vous essayez de créer une réplique en lecture à l'avenir.

  • Amazon RDS Custom utilise la gestion automatique de la mémoire (AMM) par défaut. Si vous souhaitez utiliser hugemem, vous pouvez configurer Amazon RDS Custom pour utiliser la gestion automatique de la mémoire partagée ()ASMM.  

  • Laissez le memory_max_target paramètre activé par défaut. Le RDS framework Amazon l'utilise en arrière-plan pour créer des répliques de lecture.

6. Vérifiez que le initVISCDB.ora fichier ne présente aucun problème en exécutant la startup nomount commande suivante :

SQL> startup nomount pfile=/rdsdbbin/oracle/dbs/initVISCDB.ora; SQL> create spfile='/rdsdbdata/admin/VISCDB/pfile/spfileVISCDB.ora' from pfile; SQL> exit

7. Créez un lien symbolique pourSPFILE.

$ ln -s /rdsdbdata/admin/VISCDB/pfile/spfileVISCDB.ora $ORACLE_HOME/dbs/
DBA

Restaurez la base de données Amazon RDS Custom à partir de la sauvegarde.

Pour Oracle 12.1.0.2 :

1. Restaurez le fichier de contrôle en utilisant le fichier de sauvegarde que vous avez précédemment capturé sur la source :

RMAN> connect target / RMAN> RESTORE CONTROLFILE FROM '/RMAN/visdb_full_bkp_100rlsbt'; Starting restore at 10-APR-22 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=201 device type=DISK channel ORA_DISK_1: restoring control file channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 output file name=/rdsdbdata/db/VIS_A/controlfile/control-01.ctl Finished restore at 10-APR-22

2. Cataloguez les pièces de sauvegarde afin de pouvoir émettre un RMAN restore :

RMAN> alter database mount; RMAN> catalog start with '/RMAN/visdb';

3. Créez un script pour restaurer la base de données :

$ vi restore.sh rman target / log=/home/rdsdb/rman.log << EOF run { set newname for database to '/rdsdbdata/db/VIS_A/datafile/%b'; restore database; switch datafile all; switch tempfile all; } EOF

4. Restaurez la source dans la base de données Amazon RDS Custom cible. Vous devez modifier les autorisations du script pour autoriser son exécution, puis exécuter le restore.sh script pour restaurer la base de données.

$ chmod 755 restore.sh $ nohup ./restore.sh &

Pour Oracle 19c :

1. Restaurez le fichier de contrôle en utilisant le fichier de sauvegarde que vous avez précédemment capturé sur la source :

RMAN> connect target / RMAN> RESTORE CONTROLFILE FROM '/RMAN/cntrl.bak'; Starting restore at 07-JUN-23 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=201 device type=DISK channel ORA_DISK_1: restoring control file channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 output file name=/rdsdbdata/db/cdb/VISCDB_A/controlfile/control-01.ctl Finished restore at 07-JUN-23

2. Cataloguez les pièces de sauvegarde afin de pouvoir émettre un RMAN restore :

RMAN> alter database mount; RMAN> catalog start with '/RMAN/visdb';

Si vous rencontrez des problèmes avec la start with commande, vous pouvez ajouter les éléments de sauvegarde individuellement, par exemple : 

RMAN> catalog backuppiece '/RMAN/visdb_full_bkp_1d1e507m';

puis répétez la commande pour chaque pièce de sauvegarde.

3. Créez un script pour restaurer la base de données. Modifiez le nom de la base de données enfichable en fonction de vos besoins. Allouez des canaux parallèles en fonction du nombre de canaux vCPUs disponibles pour accélérer le processus de restauration.

$ vi restore.sh rman target / log=/home/rdsdb/rmancdb.log << EOF run { allocate channel c1 type disk; allocate channel c2 type disk; .... .... .... allocate channel c<N> type disk; set newname for database to '/rdsdbdata/db/cdb/VISCDB_A/datafile/%b'; set newname for database root to '/rdsdbdata/db/cdb/VISCDB_A/datafile/%f_%b'; set newname for database "PDB$SEED" to '/rdsdbdata/db/cdb/pdbseed/%f_%b'; set newname for pluggable database VIS to '/rdsdbdata/db/pdb/VISCDB_A/%f_%b'; restore database; switch datafile all; switch tempfile all; release channel c1; release channel c2; release channel c3; .... .... .... release channel c<N>; } EOF

4. Restaurez la source dans la base de données Amazon RDS Custom cible. Vous devez modifier les autorisations du script pour autoriser son exécution, puis exécuter le restore.sh script pour restaurer la base de données.

$ chmod 755 restore.sh $ nohup ./restore.sh &
DBA

Vérifiez les fichiers journaux pour détecter les problèmes.

Pour Oracle 12.1.0.2 :

1. Vérifiez qu'il n'y a aucun problème en consultant le rman.log fichier :

$ cat /home/rdsdb/rman.log

2. Confirmez le chemin des fichiers journaux enregistrés dans le fichier de contrôle :

SQL> select member from v$logfile; MEMBER -------------------------------------------------------------------------------- /d01/oracle/VIS/data/log1.dbf /d01/oracle/VIS/data/log2.dbf /d01/oracle/VIS/data/log3.dbf

3. Renommez les fichiers journaux pour qu'ils correspondent au chemin de fichier de la cible. Remplacez le chemin pour qu'il corresponde au résultat de l'étape précédente :

SQL> ALTER DATABASE RENAME FILE '/d01/oracle/VIS/data/log1.dbf' TO '/rdsdbdata/db/VIS_A/onlinelog/log1.dbf'; SQL> ALTER DATABASE RENAME FILE '/d01/oracle/VIS/data/log2.dbf' TO '/rdsdbdata/db/VIS_A/onlinelog/log2.dbf'; SQL> ALTER DATABASE RENAME FILE '/d01/oracle/VIS/data/log3.dbf' TO '/rdsdbdata/db/VIS_A/onlinelog/log3.dbf';

Pour Oracle 19c :

1. Vérifiez qu'il n'y a aucun problème en consultant le rmancdb.log fichier :

$ cat /home/rdsdb/rmancdb.log

2. Confirmez le chemin des fichiers journaux enregistrés dans le fichier de contrôle :

SQL> select member from v$logfile; MEMBER -------------------------------------------------------------------------------- /d01/oracle/VIS/oradata/VISCDB/redo03.log /d01/oracle/VIS/oradata/VISCDB/redo02.log /d01/oracle/VIS/oradata/VISCDB/redo01.log

3. Renommez les fichiers journaux pour qu'ils correspondent au chemin de fichier de la cible. Remplacez le chemin pour qu'il corresponde au résultat de l'étape précédente :

SQL> ALTER DATABASE RENAME FILE '/d01/oracle/VIS/oradata/VISCDB/redo01.log' TO '/rdsdbdata/db/cdb/VISCDB_A/onlinelog/log1.dbf'; SQL> ALTER DATABASE RENAME FILE '/d01/oracle/VIS/oradata/VISCDB/redo02.log' TO '/rdsdbdata/db/cdb/VISCDB_A/onlinelog/log2.dbf'; SQL> ALTER DATABASE RENAME FILE '/d01/oracle/VIS/oradata/VISCDB/redo03.log' TO '/rdsdbdata/db/cdb/VISCDB_A/onlinelog/log3.dbf';

4. Confirmez le chemin, l'état des fichiers journaux et le numéro de groupe enregistré dans le fichier de contrôle :

SQL> column REDOLOG_FILE_NAME format a50 SQL> SELECT a.GROUP#, a.status, b.MEMBER AS REDOLOG_FILE_NAME, (a.BYTES/1024/1024) AS SIZE_MB FROM v$log a JOIN v$logfile b ON a.Group#=b.Group# ORDER BY a.GROUP#; GROUP# STATUS REDOLOG_FILE_NAME SIZE_MB 1 CURRENT /rdsdbdata/db/cdb/VISCDB_A/onlinelog/log1.dbf 512 2 INACTIVE /rdsdbdata/db/cdb/VISCDB_A/onlinelog/log2.dbf 512 3 INACTIVE /rdsdbdata/db/cdb/VISCDB_A/onlinelog/log3.dbf 512
DBA

Vérifiez que vous pouvez ouvrir la base de données Amazon RDS Custom et créer des fichiers OMF journaux.

Amazon RDS Custom pour Oracle utilise Oracle Managed Files (OMF) pour simplifier les opérations. Vous pouvez convertir les répliques de lecture en instances autonomes, mais vous devez d'abord créer les fichiers journaux à l'aide de. OMF Cela permet de garantir que le chemin correct est utilisé lors de la promotion de l'instance. Pour plus d'informations sur la manière de promouvoir les répliques de lecture, consultez la RDSdocumentation Amazon. Le fait de ne pas utiliser de OMF fichiers peut entraîner des problèmes lorsque vous essayez de promouvoir les répliques en lecture.

1. Ouvrez la base de données avec resetlogs :

SQL> alter database open resetlogs;

Remarque : Si vous recevez le message d'erreur ORA-00392 : le journal xx du thread 1 est en cours d'effacement, opération non autorisée, suivez les étapes de la section Dépannage pour ORA-00392.

2. Vérifiez que la base de données est ouverte :

SQL> select open_mode from v$database; OPEN_MODE -------------------- READ WRITE

3. Créez les fichiers OMF journaux. Modifiez les numéros de groupe, le nombre de groupes et la taille en fonction de vos besoins en utilisant le résultat de la requête de fichier journal précédente. L'exemple suivant commence au groupe 4 et ajoute trois groupes pour des raisons de simplicité.

SQL> alter database add logfile group 4 size 512M; Database altered. SQL> alter database add logfile group 5 size 512M; Database altered. SQL> alter database add logfile group 6 size 512M; Database altered.

4. Supprimez les fichiers non OMF fichiers précédents. Voici un exemple que vous pouvez personnaliser en fonction de vos besoins et du résultat de la requête des étapes précédentes :

SQL> alter database drop logfile group 1; System altered. SQL> alter database drop logfile group 2; System altered. SQL> alter database drop logfile group 3; System altered.

Remarque : Si le message d'erreur ORA -01624 s'affiche lorsque vous tentez de supprimer les fichiers journaux, consultez la section Dépannage.

5. Vérifiez que vous pouvez voir les OMF fichiers créés. (Le chemin du répertoire varie pour Oracle 12.1.0.2 et 19c, mais le concept est le même.)

SQL> select member from v$logfile; MEMBER ----------------------------------------------------- /rdsdbdata/db/cdb/VISCDB_A/onlinelog/o1_mf_4_ksrbslny_.log /rdsdbdata/db/cdb/VISCDB_A/onlinelog/o1_mf_5_ksrchw0k_.log /rdsdbdata/db/cdb/VISCDB_A/onlinelog/o1_mf_6_ksrcnl9v_.log

6. Redémarrez la base de données et vérifiez qu'elle SPFILE est utilisée par l'instance :

SQL> shutdown immediate SQL> startup SQL> show parameter spfile

Pour Oracle 12.1.0.2, cette requête renvoie :

spfile /rdsdbbin/oracle/dbs/spfileVIS.ora

Pour Oracle 19c, la requête renvoie :

spfile /rdsdbbin/oracle/dbs/spfileVISCDB.ora

7. Pour Oracle 19c uniquement, vérifiez l'état de la base de données de conteneurs et ouvrez-la si nécessaire :

SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------- ---------- 2 PDB$SEED READ ONLY NO 3 VIS MOUNTED NO SQL> alter session set container=VIS; Session altered. SQL> alter database open; Database altered. SQL> alter database save state; Database altered. SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ----- 3 VIS READ WRITE NO SQL> exit

8. Supprimez le init.ora fichier de$ORACLE_HOME/dbs, car vous n'utilisez pas PFILE :

$ cd $ORACLE_HOME/dbs

Pour Oracle 12.1.0.2, utilisez la commande suivante :

$ pwd /rdsdbbin/oracle/dbs $ rm initVIS.ora

Pour Oracle 19c, utilisez la commande :

$ pwd /rdsdbbin/oracle/dbs $ rm initVISCDB.ora
DBA
TâcheDescriptionCompétences requises

Récupérez les mots de passe depuis Secrets Manager.

Vous pouvez effectuer ces étapes dans la console ou à l'aide du AWSCLI. Les étapes suivantes fournissent des instructions pour la console.

1. Connectez-vous à la console AWS de gestion et ouvrez la RDS console Amazon à l'adresse https://console.aws.amazon.com/rds/.

2. Dans le volet de navigation, choisissez Databases, puis sélectionnez la RDS base de données Amazon.

3. Choisissez Configuration, puis notez l'ID de ressource de l'instance (il sera au format :db-WZ4WLCK6AOQ6TJGZKMGRCDCI3Y).

4. Ouvrez la console AWS Secrets Manager à l'adresse https://console.aws.amazon.com/secretsmanager/.

5. Choisissez le secret qui porte le même nom quedo-not-delete-custom-<resource_id>, où resource-id fait référence à l'ID de l'instance que vous avez noté à l'étape 3.

6. Choisissez Retrieve secret value (Récupérer la valeur d'un secret).

DBA

Créez l'RDSADMINutilisateur.

RDSADMINest un utilisateur de base de données de surveillance et d'orchestration dans l'instance de base de données Amazon RDS Custom. Étant donné que la base de données de départ a été supprimée et que la base de données cible a été restaurée à partir de la source en utilisantRMAN, vous devez recréer cet utilisateur après l'opération de restauration pour vous assurer que la surveillance RDS personnalisée d'Amazon fonctionne comme prévu. Vous devez également créer un profil et un espace disque logique distincts pour l'RDSADMINutilisateur. Les instructions diffèrent légèrement pour Oracle 12.1.0.2 et 19c.

Pour Oracle 12.1.0.2 :

1. Entrez les commandes suivantes lorsque vous y êtes SQL invité :

SQL> set echo on feedback on serverout on SQL> @?/rdbms/admin/utlpwdmg.sql SQL> ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED PASSWORD_LIFE_TIME UNLIMITED PASSWORD_VERIFY_FUNCTION NULL;

2. Créez le profil RDSADMIN :

SQL> create profile RDSADMIN LIMIT COMPOSITE_LIMIT UNLIMITED SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED IDLE_TIME UNLIMITED CONNECT_TIME UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME UNLIMITED PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_VERIFY_FUNCTION NULL PASSWORD_LOCK_TIME 86400/86400 PASSWORD_GRACE_TIME 604800/86400;

3. Définissez les profils SYSSYSTEM, et DBSNMP utilisateur pour RDSADMIN :

SQL> set echo on feedback on serverout on SQL> alter user SYS profile RDSADMIN; SQL> alter user SYSTEM profile RDSADMIN; SQL> alter user DBSNMP profile RDSADMIN;

4. Créez le RDSADMIN tablespace :

SQL> create bigfile tablespace rdsadmin datafile size 7M autoextend on next 1m Logging online permanent blocksize 8192 extent management local autoallocate default nocompress segment space management auto;

5. Créez l'RDSADMINutilisateur. Remplacez le RDSADMIN mot de passe par le mot de passe que vous avez obtenu précédemment auprès de Secrets Manager :

SQL> create user rdsadmin identified by xxxxxxxxxx Default tablespace rdsadmin Temporary tablespace temp profile rdsadmin ;

6. Accordez des privilèges à RDSADMIN :

SQL> grant select on sys.v_$instance to rdsadmin; SQL> grant select on sys.v_$archived_log to rdsadmin; SQL> grant select on sys.v_$database to rdsadmin; SQL> grant select on sys.v_$database_incarnation to rdsadmin; SQL> grant select on dba_users to rdsadmin; SQL> grant alter system to rdsadmin; SQL> grant alter database to rdsadmin; SQL> grant connect to rdsadmin with admin option; SQL> grant resource to rdsadmin with admin option; SQL> alter user rdsadmin account unlock identified by xxxxxxxxxxx; SQL> @?/rdbms/admin/userlock.sql SQL> @?/rdbms/admin/utlrp.sql

Pour Oracle 19c :

1. Entrez les commandes suivantes lorsque vous y êtes SQL invité :

SQL> set echo on feedback on serverout on SQL> @?/rdbms/admin/utlpwdmg.sql SQL> alter profile default LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED PASSWORD_LIFE_TIME UNLIMITED PASSWORD_VERIFY_FUNCTION NULL;

2. Créez le profilRDSADMIN.

Remarque : RDSADMIN possède un préfixe « C## in Oracle 19c ». Cela est dû au fait que le paramètre de base de données common_user_prefix est défini surC##. RDSADMINn'a aucun préfixe dans Oracle 12.1.0.2.

SQL> create profile C##RDSADMIN LIMIT COMPOSITE_LIMIT UNLIMITED SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED IDLE_TIME UNLIMITED CONNECT_TIME UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME UNLIMITED PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_VERIFY_FUNCTION NULL PASSWORD_LOCK_TIME 86400/86400 PASSWORD_GRACE_TIME 604800/86400;

3. Définissez les profils SYSSYSTEM, et DBSNMP utilisateur pour RDSADMIN :

SQL> alter user SYS profile C##RDSADMIN; SQL> alter user SYSTEM profile C##RDSADMIN; SQL> alter user DBSNMP profile C##RDSADMIN;

4. Créez le RDSADMIN tablespace :

SQL> create bigfile tablespace rdsadmin datafile size 7M autoextend on next 1m Logging online permanent blocksize 8192 extent management local autoallocate default nocompress segment space management auto;

5. Créez l'RDSADMINutilisateur. Remplacez le RDSADMIN mot de passe par le mot de passe que vous avez obtenu précédemment auprès de Secrets Manager.

SQL> create user C##rdsadmin identified by xxxxxxxxxx profile C##rdsadmin container=all;

6. Accordez des privilèges à RDSADMIN :

SQL> grant select on sys.v_$instance to c##rdsadmin; SQL> grant select on sys.v_$archived_log to c##rdsadmin; SQL> grant select on sys.v_$database to c##rdsadmin; SQL> grant select on sys.v_$database_incarnation to c##rdsadmin; SQL> grant select on dba_users to c##rdsadmin; SQL> grant alter system to C##rdsadmin; SQL> grant alter database to C##rdsadmin; SQL> grant connect to C##rdsadmin with admin option; SQL> grant resource to C##rdsadmin with admin option; SQL> alter user C##rdsadmin account unlock identified by xxxxxxxxxxx; SQL> @?/rdbms/admin/userlock.sql SQL> @?/rdbms/admin/utlrp.sql
DBA

Créez l'utilisateur principal.

Étant donné que la base de données de départ a été supprimée et que la base de données cible a été restaurée à partir de la source en utilisantRMAN, vous devez recréer l'utilisateur principal. Dans cet exemple, le nom d'utilisateur principal estadmin.

Pour Oracle 12.1.0.2 :

SQL> create user admin identified by <password>; SQL> grant dba to admin

Pour Oracle 19c :

SQL> alter session set container=VIS; Session altered. SQL> create user admin identified by <password>; User created. SQL> grant dba to admin; Grant succeeded.
DBA

Modifiez les mots de passe des superutilisateurs.

1. Modifiez les mots de passe du système en utilisant le mot de passe que vous avez récupéré dans Secrets Manager.

Pour Oracle 12.1.0.2 :

SQL> alter user sys identified by xxxxxxxxxxx; SQL> alter user system identified by xxxxxxxxxx;

Pour Oracle 19c :

SQL> alter user sys identified by xxxxxxxxxxx container=all; SQL> alter user system identified by xxxxxxxxxx container=all;
  1. Changez les EBS_SYSTEM mots de passe.

Pour Oracle 12.1.0.2 :

SQL> alter user ebs_system identified by xxxxxxxxxx;

Pour Oracle 19c :

Pour cette version, vous devez également vous connecter à la base de données du conteneur pour y mettre à jour le EBS_SYSTEM mot de passe.

SQL> alter session set container=vis; SQL> alter user ebs_system identified by xxxxxxxxxx; SQL> exit;

Si vous ne modifiez pas ces mots de passe, Amazon RDS Custom affiche le message d'erreur suivant : L'utilisateur de surveillance de la base de données ou les informations d'identification de l'utilisateur ont changé.

DBA
TâcheDescriptionCompétences requises

Créez les répertoires requis pour Oracle E-Business Suite.

1. Sur la base de données Oracle RDS personnalisée Amazon, exécutez le script suivant en tant qu'utilisateur d'Oracle Home, pour créer le 9idata répertoire dans$ORACLE_HOME/nls/data/9idata. Ce répertoire est obligatoire pour Oracle E-Business Suite.

perl $ORACLE_HOME/nls/data/old/cr9idata.pl

Ignorez le ORA_NLS10 message, car vous allez créer l'environnement contextuel ultérieurement.

2. Copiez le appsutil.tar fichier que vous avez créé précédemment à partir du système de EFS fichiers Amazon partagé et décompressez-le dans le répertoire d'accueil Oracle RDS personnalisé d'Amazon.  Cela crée le appsutil répertoire dans le $ORACLE_HOME répertoire.

$ cd /RMAN/appsutil $ cp sourceappsutil.tar $ORACLE_HOME $ cd $ORACLE_HOME $ tar xvf sourceappsutil.tar appsutil

3. Copiez le appsutil.zip fichier que vous avez précédemment enregistré sur le système de fichiers EFS partagé Amazon.  Il s'agit du fichier que vous avez créé au niveau de l'application.

En tant qu'rdsdbutilisateur de l'instance de base de données Amazon RDS Custom :

$ cp /RMAN/appsutil/appsutil.zip $ORACLE_HOME $ cd $ORACLE_HOME

4. Décompressez le appsutil.zip fichier pour créer le appsutil répertoire et les sous-répertoires dans le répertoire de base d'Oracle :

$ unzip -o appsutil.zip

-oCette option signifie que certains fichiers seront remplacés.

Configurez les fichiers tsanames.ora et sqlnet.ora.

Vous devez configurer le tnsnames.ora fichier afin de pouvoir vous connecter à la base de données avec l'outil Autoconfig. Dans l'exemple suivant, vous pouvez voir que le tnsnames.ora fichier est associé à des liens souples, mais qu'il est vide par défaut.

$ cd $ORACLE_HOME/network/admin $ ls -ltr -rw-r--r-- 1 rdsdb database 373 Oct 31 2013 shrept.lst lrwxrwxrwx 1 rdsdb database 30 Feb 9 17:17 listener.ora -> /rdsdbdata/config/listener.ora lrwxrwxrwx 1 rdsdb database 28 Feb 9 17:17 sqlnet.ora -> /rdsdbdata/config/sqlnet.ora lrwxrwxrwx 1 rdsdb database 30 Feb 9 17:17 tnsnames.ora -> /rdsdbdata/config/tnsnames.ora

1. Créez l'tnsnames.oraentrée. En raison de la façon dont Amazon RDS Automation analyse les fichiers, vous devez vous assurer que l'entrée ne contient pas d'espaces blancs, de commentaires ou de lignes supplémentaires. Sinon, vous risquez de rencontrer des problèmes lors de l'utilisation de certains outils APIs tels que create-db-instance -read-replica. Utilisez ce qui suit comme exemple.    

2. Remplacez le port, l'hôte et, SID conformément à vos besoins :

$ vi tnsnames.ora VIS=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(PORT=1521)(HOST=xx.xx.xx.xx)))(CONNECT_DATA=(SID=VIS)(SERVER=DEDICATED)))

Remarque : le fichier ne doit contenir aucune ligne supplémentaire. Si vous ne supprimez pas les lignes, vous risquez de rencontrer des problèmes lors de la création d'une réplique en lecture à l'avenir. La création d'une réplique en lecture peut échouer avec le message d'erreur suivant : L'activité a généré une exception HostManagerException : Impossible d'appeler restrictReplication avec succès aucun hôte.

3. Vérifiez que la base de données est accessible :

$ tnsping vis OK (0 msec)

4. Pour Oracle 19c uniquement, mettez à jour le sqlnet.ora fichier. Dans le cas contraire, l'erreur ORA-01017 s'affichera : nom d'utilisateur/mot de passe non valide ; ouverture de session refusée lorsque vous essayez de vous connecter à la base de données. Modifiez sqlnet.ora $ORACLE_HOME/network/admin pour qu'il corresponde à ce qui suit :

NAMES.DIRECTORY_PATH=(TNSNAMES, ONAMES, HOSTNAME) SQLNET.EXPIRE_TIME= 10 SQLNET.INBOUND_CONNECT_TIMEOUT =60 SQLNET.ALLOWED_LOGON_VERSION_SERVER=10 HTTPS_SSL_VERSION=undetermined

5. Testez la connectivité :

$ sqlplus apps/****@vis
DBA

Configurez la base de données.

Maintenant que vous avez testé la connectivité à la base de données, vous pouvez configurer la base de données à l'aide de l'utilitaire appsutil pour créer un environnement contextuel.

Pour Oracle 12.1.0.2 :

1. Exécutez les commandes suivantes :

$ cd $ORACLE_HOME/appsutil/bin $ perl adbldxml.pl appsuser=apps Enter Hostname of Database server: oebs-db01 Enter Port of Database server: 1521 Enter SID of Database server: VIS Enter Database Service Name: VIS Enter the value for Display Variable: :1 The context file has been created at: /rdsdbbin/oracle/appsutil/VIS_oebs-db01.xml

2. Créez oraInst.loc à partir de l'utilisateur root :

$ vi /etc/oraInst.loc inventory_loc=/rdsdbbin/oracle.12.1.custom.r1.EE.1/oraInventory inst_group=database

3. Clonez le fichier de contexte pour définir le nom d'hôte logique à l'aide du fichier de contexte que vous avez créé à l'étape précédente. En tant qu'rdsdbutilisateur, exécutez :

$ cd $ORACLE_HOME/appsutil/clone/bin $ perl adclonectx.pl \ contextfile=[ORACLE_HOME]/appsutil/[current context file] \ template=[ORACLE_HOME]/appsutil/template/adxdbctx.tmp

oebs-db01log fait référence au nom d'hôte logique. Par exemple :

$ perl adclonectx.pl \ contextfile=/rdsdbbin/oracle.12.1.custom.r1.EE.1/appsutil/VIS_oebs-db01.xml \ template=/rdsdbbin/oracle/appsutil/template/adxdbctx.tmp Target System Hostname (virtual or normal) [oebs-db01] : oebs-db01log Target System Base Directory : /rdsdbbin/oracle Target Instance is RAC (y/n) [n] : n Target System Database SID : VIS Oracle OS User [rdsdb] : Oracle OS Group [rdsdb] : database Role separation is supported y/n [n] ? : n Target System utl_file_dir Directory List : /tmp Number of DATA_TOP's on the Target System [1] : Target System DATA_TOP Directory 1 [/rdsdbbin/oracle/data] : /rdsdbdata/db/VIS_A/datafile/ Target System RDBMS ORACLE_HOME Directory [/rdsdbbin/oracle/12.1.0] : /rdsdbbin/oracle Do you want to preserve the Display [:1] (y/n) : y Do you want the target system to have the same port values as the source system (y/n) [y] ? : y The new database context file has been created : /rdsdbbin/oracle.12.1.custom.r1.EE.1/appsutil/clone/bin/VIS_oebs-db01log.xml contextfile=/rdsdbbin/oracle.12.1.custom.r1.EE.1/appsutil/clone/bin/VIS_oebs-db01log.xml

Pour Oracle 19c :

1. Exécutez les commandes suivantes :

$ cd $ORACLE_HOME/appsutil/bin $ perl adbldxml.pl appsuser=apps Enter Hostname of Database server: oebs-db01 Enter Port of Database server: 1521 Enter SID of Database server: VIS Enter the database listener name:L_VISCDB_001 Enter the value for Display Variable: :1 The context file has been created at: /rdsdbbin/oracle/appsutil/VIS_oebs-db01.xml

2. Créez oraInst.loc à partir de l'utilisateur root :

$ vi /etc/oraInst.loc inventory_loc=/rdsdbbin/oracle/oraInventory inst_group=database

3. Clonez le fichier de contexte pour définir le nom d'hôte logique à l'aide du fichier de contexte que vous avez créé à l'étape précédente. En tant qu'rdsdbutilisateur, exécutez :

$ cd $ORACLE_HOME/appsutil/clone/bin $ perl adclonectx.pl \ contextfile=[ORACLE_HOME]/appsutil/[current context file] \ template=[ORACLE_HOME]/appsutil/template/adxdbctx.tmp

oebs-db01log fait référence au nom d'hôte logique. Par exemple :

$ perl adclonectx.pl \ contextfile=/rdsdbbin/oracle/appsutil/VIS_oebs-db01.xml \ template=/rdsdbbin/oracle/appsutil/template/adxdbctx.tmp Target System Hostname (virtual or normal) [oebs-db01] : oebs-db01log Target System Base Directory : /rdsdbbin/oracle Target Instance is RAC (y/n) [n] : n Target System CDB Name : VISCDB Target System PDB Name : VIS Oracle OS User [oracle] : rdsdb Oracle OS Group [dba] : database Role separation is supported y/n [n] ? : n Number of DATA_TOP's on the Target System [2] : Target System DATA_TOP Directory 1 [/d01/oracle/VISCDB] : /rdsdbdata/db/pdb/VISCDB_A Target System DATA_TOP Directory 2 [/d01/oracle/data] : /rdsdbdata/db/pdb/VISCDB_A/datafile Specify value for OSBACKUPDBA group [database] : Specify value for OSDGDBA group [database] : Specify value for OSKMDBA group [database] : Specify value for OSRACDBA group [database] : Target System RDBMS ORACLE_HOME Directory [/d01/oracle/19.0.0] : /rdsdbbin/oracle Do you want to preserve the Display [:1] (y/n) : y Do you want the target system to have the same port values as the source system (y/n) [y] ? : y Validating if the source port numbers are available on the target system.. Complete port information available at /rdsdbbin/oracle/appsutil/clone/bin/out/VIS_oebs-db01log/portpool.lst New context path and file name [VIS_oebs-db01log.xml] : /rdsdbbin/oracle/appsutil/VIS_oebs-db01log.xml Do you want to overwrite it (y/n) [n] ? : y Replacing /rdsdbbin/oracle/appsutil/VIS_oebs-db01log.xml file. The new database context file has been created : contextfile=/rdsdbbin/oracle/appsutil/VIS_oebs-db01log.xml Check Clone Context logfile /rdsdbbin/oracle/appsutil/clone/bin/CloneContext_0609141428.log for details.
DBA

Installez ETCC et exécutez Autoconfig.

1. Installez le vérificateur de niveau de code de la technologie Oracle E-Business Suite (). ETCC 

Téléchargez le correctif 17537119 depuis My Oracle Support et suivez les instructions indiquées dans. README.txt Vous allez créer un répertoire appelé etcc dans le $ORACLE_HOME répertoire, décompresser le correctif pour créer un script appelécheckMTpatch.sh, puis exécuter le script pour vérifier les versions du correctif.

2. Exécutez l'utilitaire Autoconfig et transmettez le nouveau fichier de contexte de nom d'hôte logique.

Pour Oracle 12.1.0.2 :

cd $ORACLE_HOME/appsutil/bin $ ./adconfig.sh contextfile=/rdsdbbin/oracle.12.1.custom.r1.EE.1/appsutil/clone/bin/VIS_oebs-db01log.xml

Pour Oracle 19c :

Autoconfig s'attend à ce que le nom de l'écouteur corresponde. CDBNAME Par conséquent, le fichier de configuration d'origine de l'écouteur sauvegardé sera utilisé L_<CDBNAME>_001 temporairement.

$ lsnrctl stop L_VISCDB_001 $ cp -rp /rdsdbdata/config/listener.ora /rdsdbdata/config/listener.ora_orig $ vi /rdsdbdata/config/listener.ora :%s/L_VISCDB_001/VISCDB/g $ lsnrctl start VISCDB $ cd /rdsdbbin/oracle/appsutil $ . ./txkSetCfgCDB.env dboraclehome=/rdsdbbin/oracle.19.custom.r1.EE-CDB.1 Oracle Home being passed: /rdsdbbin/oracle $ echo $ORACLE_HOME /rdsdbbin/oracle.19.custom.r1.EE-CDB.1 $ export ORACLE_SID=VISCDB $ cd $ORACLE_HOME/appsutil/bin $ perl $ORACLE_HOME/appsutil/bin/txkPostPDBCreationTasks.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=VISCDB -pdbsid=VIS -appsuser=apps -dbport=1521 -servicetype=onpremise Enter the APPS Password: <apps password> Enter the CDB SYSTEM Password:<password from secrets manager>

Remarque : Si les répertoires de votre base de données ont changé, suivez les instructions de la note de support Oracle 2525754.1.

DBA
TâcheDescriptionCompétences requises

Configurez les TNS entrées pour Amazon RDS Custom et Oracle E-Business Suite.

Autoconfig génère les TNS ifiles dans les emplacements par défaut. Pour Oracle 12.1.0.2 (qui n'est pas un-CDB) et pour PDB Oracle19c, l'emplacement par défaut est. $ORACLE_HOME/network/admin/$<CONTEXT_NAME> Le CDB pour Oracle 19c utilise la valeur par défaut$ORACLE_HOME/network/admin/, telle que définie $TNS_ADMIN dans les fichiers d'environnement générés lorsque vous avez exécuté Autoconfig dans les étapes précédentes.

Pour Oracle 12.1.0.2 et 19cCDB, vous ne les utiliserez pas car les listener.ora fichiers tnsnames.ora et générés par Autoconfig ne respectent pas les RDS exigences d'Amazon, telles que l'absence d'espaces blancs ou de commentaires. Vous utilisez plutôt les fichiers génériques fournis avec la base de données Amazon RDS Custom pour garantir la conformité aux attentes du système et pour réduire la marge d'erreur. 

Par exemple, Amazon RDS Custom attend le format de dénomination suivant :

L_<INSTANCE_NAME>_001

Pour Oracle 12.1.0.2, ce serait :

L_VIS_001

Pour Oracle 19c, ce serait :

L_VISCDB_001

Voici un exemple du listener.ora fichier que vous allez utiliser. Cela a été généré lorsque vous avez créé la base de données Amazon RDS Custom. À ce stade, vous n'avez apporté aucune modification à ce fichier et vous le conserverez comme fichier par défaut.

Pour Oracle 12.1.0.2 :

$ cd $ORACLE_HOME/network/admin $ cat listener.ora ADR_BASE_L_VIS_001=/rdsdbdata/log/ SID_LIST_L_VIS_001=(SID_LIST = (SID_DESC = (SID_NAME = VIS)(GLOBAL_DBNAME = VIS) (ORACLE_HOME = /rdsdbbin/oracle))) L_VIS_001=(DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = 1521)(HOST = xx.xx.xx.xx))) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = 1521)(HOST = 127.0.0.1)))) SUBSCRIBE_FOR_NODE_DOWN_EVENT_L_VIS_001=OFF

Pour Oracle 19c : restaurez le listener.ora fichier d'origine avec le nom de l'écouteur. L_<INSTANCE_NAME>_001

$ cd $ORACLE_HOME/network/admin $ cp -rp /rdsdbdata/config/listener.ora /rdsdbdata/config/listener.ora_autoconfig $ cp -rp /rdsdbdata/config/listener.ora_orig /rdsdbdata/config/listener.ora $ cat listener.ora SUBSCRIBE_FOR_NODE_DOWN_EVENT_L_VISCDB_001=OFF ADR_BASE_L_VISCDB_001=/rdsdbdata/log/ USE_SID_AS_SERVICE_L_VISCDB_001=ON L_VISCDB_001=(DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = 1521)(HOST = xx.xx.xx.xx))) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = 1521)(HOST = 127.0.0.1)))) SID_LIST_L_VISCDB_001=(SID_LIST = (SID_DESC = (SID_NAME = VISCDB)(GLOBAL_DBNAME = VISCDB) (ORACLE_HOME = /rdsdbbin/oracle)))

Démarrez l'écouteur L_<INSTANCE_NAME>_001 pour les RDS opérations Amazon standard :

$ lsnrctl stop $ lsnrctl start L_VISCDB_001

Pour Oracle 12.1.0.2 :

Modifiez le fichier d'environnement Oracle E-Business Suite pour modifier le $TNS_ADMIN chemin d'utilisation des TNS ifiles génériques Amazon RDS Custom. Le fichier d'environnement a été créé lorsque vous avez exécuté Autoconfig plus tôt. Modifiez la TNS_ADMIN variable en supprimant le <CONTEXT_NAME> suffixe.  

Remarque : vous ne devez modifier le fichier d'environnement que dans Oracle 12.1.0.2, car le répertoire d'origine par défaut pour 19c est $ORACLE_HOME/network/admin le même que celui par défaut pour Amazon Custom. RDS

Par exemple, dans Oracle 12.1.0.2, modifiez le fichier :

$ vi $ORACLE_HOME/VIS_oebs-db01log.env

Changez le chemin à partir de : 

TNS_ADMIN=”/rdsdbbin/oracle/network/admin/VIS_oebs-db01log” export TNS_ADMIN

par :

TNS_ADMIN=”/rdsdbbin/oracle/network/admin” export TNS_ADMIN

Remarque : Chaque fois que vous exécutez Autoconfig, vous devez répéter cette étape pour vous assurer que les TNS fichiers ifiles appropriés sont utilisés. (12.1.0.2 uniquement).

Pour Oracle 19c :

1. Remplacez la valeur de la variable de contexte de niveau de base de données par s_cdb_tnsadmin au <ORACLE_HOME>/network/admin lieu de<ORACLE_HOME>/network/admin/<CONTEXT_NAME>.

Remarque : Ne mettez pas à jour la variable de s_db_tnsadmin contexte. Laissez-le tel quel<ORACLE_HOME>/network/admin/<CONTEXT_NAME>.

$ . $ORACLE_HOME/VIS_oebs-db01log.env $ vi $CONTEXT_FILE

2. Enregistrez les modifications que vous avez apportées à la valeur des_cdb_tnsadmin.

Les valeurs pour s_db_tnsadmin et s_cdb_tnsadmin doivent ressembler à ce qui suit, avec le PDB nom as VIS et le nom logique du nœud de base de données commeoebs-db01log.

$ grep -i tns_admin $CONTEXT_FILE <TNS_ADMIN oa_var="s_db_tnsadmin">/rdsdbbin/oracle/network/admin/VIS_oebs-db01log</TNS_ADMIN> <CDB_TNS_ADMIN oa_var="s_cdb_tnsadmin">/rdsdbbin/oracle/network/admin</CDB_TNS_ADMIN>

3. Exécutez Autoconfig au niveau de la base de données :

$ . $ORACLE_HOME/VISCDB_oebs-db01log.env $ export ORACLE_PDB_SID=VIS $ sqlplus "/ as sysdba" @$ORACLE_HOME/appsutil/admin/adgrants.sql APPS $ sqlplus "/ as sysdba" @$ORACLE_HOME/rdbms/admin/utlrp.sql $ . $ORACLE_HOME/VIS_oebs-db01log.env $ echo $ORACLE_SID VIS $ cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME $ ./adautocfg.sh
DBA

Définissez l'environnement pour l'utilisateur rdsdb.

Ignorez cette étape pour Oracle 19c.

Pour Oracle 12.1.0.2 :

Maintenant que vous avez terminé la configuration automatique et TNS les entrées, vous devez charger le fichier d'environnement en le définissant dans le profil de rdsdb l'utilisateur.

Mise .bash_profile à jour pour appeler le .env fichier de base de données Oracle E-Business Suite. Vous devez mettre à jour le profil pour vous assurer que l'environnement est chargé. Ce fichier d'environnement a été créé lorsque vous avez exécuté Autoconfig plus tôt.

L'exemple de fichier d'environnement suivant est créé lorsque vous exécutez Autoconfig :

. /rdsdbbin/oracle/VIS_oebs-db01log.env

En tant qu'rdsdbutilisateur :

cd $HOME vi .bash_profile export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${ORACLE_HOME}/ctx/lib export SHLIB_PATH=${ORACLE_HOME}/lib export PATH=$PATH:${ORACLE_HOME}/bin alias sql=’rlwrap -c sqlplus / as sysdba’ . ${ORACLE_HOME}/VIS_oebs-db01log.env

Remarque : pour Oracle 19c, il n'est pas nécessaire de charger l'CDBenvironnement. .bash_profile Cela est dû au fait que le chemin par défaut ORACLE_HOME est défini sur le chemin par défaut$ORACLE_HOME/network/admin, qui est le répertoire d'accueil par défaut de l'utilisateur rdsdb (Oracle Home).

DBA

Configurez l'application et la base de données pour Amazon RDS Custom.

Effectuez les deux premières étapes pour Oracle 12.1.0.2 et 19c. Les étapes suivantes sont différentes pour chaque version.

1. Au niveau de l'application, modifiez /etc/hosts et remplacez l'adresse IP de la base de données par l'adresse IP RDS personnalisée Amazon :

xx.xx.xx.xx OEBS-db01.localdomain OEBS-db01 OEBS-db01log.localdomain OEBS-db01log

Comme vous utilisez des noms d'hôte logiques, vous pouvez remplacer le nœud de base de données de manière presque fluide.

2. Sur l'instance de base de données Amazon RDS Custom, ajoutez ou modifiez le groupe de sécurité attribué à l'EC2instance source pour refléter l'instance de base de données Amazon RDS Custom, afin de garantir que l'application peut accéder au nœud.

Pour Oracle 12.1.0.2 :

3. Exécutez Autoconfig. En tant que propriétaire de l'application (par exemple,applmgr), exécutez :

$ cd $INST_TOP/admin/scripts $ ./adautocfg.sh AutoConfig completed successfully.

4. Vérifiez les fnd_nodes entrées :

SQL> select node_name from apps.fnd_nodes NODE_NAME -------------------------------------------------------------------------------- AUTHENTICATION OEBS-APP01LOG OEBS-DB01LOG

5. Confirmez que vous pouvez vous connecter et démarrer l'application :

$ ./adstrtal.sh

Pour Oracle 19c :

  1. Vérifiez s'PDBil est ouvert et ouvrez-le si nécessaire :

SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 VIS MOUNTED SQL> alter session set container=vis; SQL> alter database open; SQL> alter database save state;

2. Testez la connectivité en tant que apps :

SQL> sqlplus apps/****@vis

3. Exécutez Autoconfig au niveau de la base de données :

$ . $ORACLE_HOME/VIS_oebs-db01log.env $ echo $ORACLE_SID VIS $ cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME $ ./adautocfg.sh

4. Exécutez Autoconfig au niveau de l'application en tant que propriétaire de l'application (par exemple,applmgr) :

$ cd $INST_TOP/admin/scripts $ ./adautocfg.sh AutoConfig completed successfully.

5. Vérifiez les fnd_nodes entrées :

SQL> select node_name from apps.fnd_nodes NODE_NAME -------------------------------------------------------------------------------- AUTHENTICATION OEBS-APP01LOG OEBS-DB01LOG

6. Lancez l'application :

$ ./adstrtal.sh
DBA
TâcheDescriptionCompétences requises

Reprenez l'automatisation pour confirmer qu'elle fonctionne.

Reprenez l'automatisation à l'aide de la AWS CLI commande suivante :

aws rds modify-db-instance \ --db-instance-identifier vis \ --automation-mode full \

La base de données est désormais gérée par Amazon RDS Custom. Par exemple, si l'écouteur ou la base de données tombe en panne, l'agent Amazon RDS Custom les redémarrera. Pour tester cela, exécutez des commandes telles que les suivantes.

Exemple d'arrêt de l'écouteur :

-bash-4.2$ lsnrctl stop vis

Exemple d'arrêt de la base de données :

SQL> shutdown immediate;
DBA

Validez le schéma, les connexions et les tâches de maintenance.

Pour finaliser la migration, vous devez au minimum effectuer les tâches suivantes.

  • Exécutez FS_CLONE pour synchroniser le système de fichiers de correctifs.

  • Collectez les statistiques du schéma. 

  • Assurez-vous que les interfaces et systèmes externes peuvent se connecter à la nouvelle base de données Amazon RDS Custom.

  • Configurez vos sauvegardes et vos calendriers de maintenance.

  • Vérifiez qu'AD Online Patching (ADOP) fonctionne comme prévu en effectuant une commutation pour changer de système de fichiers.

DBA

Résolution des problèmes

ProblèmeSolution

Le message d'erreur ORA -01624 s'affiche lorsque vous essayez de supprimer les fichiers journaux.

Si le message d'erreur ORA -01624 s'affiche lorsque vous essayez de supprimer les fichiers journaux, procédez comme suit.

Émettez la commande suivante et attendez que le statut des fichiers journaux que vous souhaitez supprimer soit atteintINACTIVE. Pour plus d'informations sur les codes d'état contenus dansV$log, consultez la documentation Oracle. Voici un exemple de commande et son résultat :

SQL> select group#, status from v$log; GROUP# STATUS ---------- ---------------- 1 ACTIVE 2 CURRENT 3 UNUSED 4 UNUSED 5 UNUSED 6 UNUSED 6 rows selected.

Dans cet exemple, le fichier journal 1 estACTIVE. Vous devez donc forcer un changement de fichier journal à trois reprises pour vous assurer que le premier nouveau fichier journal que vous avez ajouté précédemment a le statut suivant CURRENT :

SQL> alter system switch logfile; System altered. SQL> alter system switch logfile; System altered. SQL> alter system switch logfile; System altered.

Attendez que tous les fichiers journaux que vous souhaitez supprimer le soientINACTIVE, comme dans l'exemple suivant, puis exécutez la DROP LOGFILE commande.

SQL> select group#, status from v$log; GROUP# STATUS ---------- ---------------- 1 INACTIVE 2 INACTIVE 3 INACTIVE 4 CURRENT 5 UNUSED 6 UNUSED 6 rows selected.

Vous recevez une erreur ORA -00392 lorsque vous ouvrez la base de données avec. resetlogs

Si vous recevez le message d'erreur ORA -00392 : le journal xx du thread 1 est en cours d'effacement, l'opération n'est pas autorisée, exécutez la commande suivante (xxremplacez-la par le numéro du fichier journal), puis réexécutez la commande d'ouverture : resetlogs

SQL> alter database clear logfile group xx; SQL> alter database open resetlogs;

Vous ne parvenez pas à vous connecter à l'application à l'aide de l'administrateur système ou de l'utilisateur de l'application.

Pour confirmer le problème, exécutez la SQL requête suivante :

SQL> select dbms_java.get_jdk_version() from dual; select dbms_java.get_jdk_version() from dual ERROR at line 1: ORA-29548: Java system class reported: release of Java system classes in the database (19.0.0.0.220719 1.8) does not match that of the oracle executable (19.0.0.0.0 1.8)

Cause première : La base de données source a été appliquée avec plusieurs correctifs, mais Amazon RDS Custom DB_HOME est une nouvelle installation, ou il n'CEVa pas inclus tous les correctifs parce que vous n'avez pas utilisé les RSU correctifs nécessaires, par exemple lorsque vous avez créé leCEV. OJVM Pour valider cela, vérifiez si les détails du correctif source sont répertoriés sur $ORACLE_HOME/sqlpath$ORACLE_HOME/.patch_storage, etopatch – lsinventory.

Référence : datapatch -verbose échoue avec une erreur : « Patch xxxxxx : le répertoire de correctifs archivé est vide » (ID du document 2235541.1)

Correctif : copiez les fichiers relatifs aux correctifs manquants de la source ($ORACLE_HOME/sqlpatch/) vers Amazon RDS Custom ($ORACLE_HOME/sqlpatch/), puis réexécutez. ./datapatch -verbose

Par exemple :

-bash-4.2$ cp -rp 18793246 20204035 20887355 22098146 22731026 $ORACLE_HOME/sqlpatch/

Vous pouvez également utiliser une solution de contournement en exécutant la commande suivante sur le CDB et PDB :

@?/javavm/install/update_javavm_db.sql

Exécutez ensuite la commande suivante sur PDB :

sql> alter session set container=vis; @?/javavm/install/update_javavm_db.sql

Maintenant, relancez le test :

SQL> select dbms_java.get_jdk_version() from dual;

Ressources connexes

Informations supplémentaires

Opérations de maintenance

Appliquer de nouveaux correctifs à la page d'accueil de la base de données Oracle E-Business Suite

Le volume bin (/rdsdbbin) étant une out-of-place mise à niveau, son contenu est supprimé lors de la CEVmise à niveau. Par conséquent, vous devez créer une copie du appsutil répertoire avant d'effectuer des mises à niveau à l'aide deCEV.

Sur l'instance Amazon RDS Custom source, avant de procéder à la mise à niveauCEV, effectuez une sauvegarde de$ORACLE_HOME/appsutil.

Remarque : Cet exemple utilise un NFS volume. Toutefois, vous pouvez utiliser une copie sur Amazon Simple Storage Service (Amazon S3) à la place.

1. Créez un répertoire pour stocker appsutil sur l'instance Amazon RDS Custom source :

$ mkdir /RMAN/appsutil.preupgrade

2. Décompressez et copiez sur le EFS volume Amazon :

$ tar cvf /RMAN/appsutil.preupgrade appsutil

3. Vérifiez que le fichier tar existe :

$ bash-4.2$ ls -l /RMAN/appsutil.preupgrade -rw-rw-r-- 1 rdsdb rdsdb 622981120 Feb  8 20:16 appsutil.tar

4. Effectuez une mise à niveau vers la dernière version CEV (la condition préalable CEV est déjà créée) en suivant les instructions de la section Mise à niveau d'une instance de base de données RDS personnalisée dans la RDS documentation Amazon).

Vous pouvez également appliquer un correctif directement en utilisantOPATCH. Consultez la section Exigences et considérations relatives aux mises à niveau RDS personnalisées pour Oracle de la RDS documentation Amazon.

Remarque : L'adresse IP de la machine hôte ne change pas pendant le processus d'CEVapplication des correctifs. Ce processus effectue une out-of-place mise à niveau et, au démarrage, un nouveau volume bin est attaché à la même instance.