Migre Oracle E-Business Suite a Amazon Custom RDS - Recomendaciones de AWS

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Migre Oracle E-Business Suite a Amazon Custom RDS

Creada por Simon Cunningham (AWS), Jaydeep Nandy (), Nitin Saxena (AWS) y Vishnu Vinnakota (AWS) AWS

Resumen

Oracle E-Business Suite es una solución de planificación de recursos empresariales (ERP) para automatizar los procesos de toda la empresa, como las finanzas, los recursos humanos, las cadenas de suministro y la fabricación. Ofrece una arquitectura de tres niveles: cliente, aplicación y base de datos. Anteriormente, tenía que ejecutar la base de datos de Oracle E-Business Suite en una instancia autogestionada de Amazon Elastic Compute Cloud EC2 (Amazon), pero ahora puede beneficiarse de Amazon Relational Database Service (Amazon) Custom. RDS  

Amazon RDS Custom for Oracle es un servicio de base de datos gestionado para aplicaciones heredadas, personalizadas y empaquetadas que requieren acceso al sistema operativo y al entorno de base de datos subyacentes. Amazon RDS Custom automatiza las tareas y operaciones de administración de bases de datos y le permite, como administrador de bases de datos, acceder y personalizar el entorno de base de datos y el sistema operativo. Al migrar la base de datos de Oracle a Amazon RDS Custom, Amazon Web Services (AWS) se encarga de las tareas más pesadas, como las tareas de copia de seguridad, y de garantizar una alta disponibilidad, al tiempo que usted puede centrarse en mantener la aplicación y la funcionalidad de Oracle E-Business Suite. Para conocer los factores clave que se deben tener en cuenta a la hora de realizar una migración, consulte las estrategias de migración de bases de datos de Oracle en la AWS Guía prescriptiva.

Este patrón se centra en los pasos para migrar una base de datos Oracle independiente de Amazon EC2 a Amazon RDS Custom mediante una copia de seguridad de Oracle Recovery Manager (RMAN) y un sistema de archivos compartidos de Amazon Elastic File System (AmazonEFS) entre la EC2 instancia y Amazon RDS Custom. El patrón utiliza una copia de seguridad RMAN completa (que a veces se denomina copia de seguridad de nivel 0).  Por motivos de simplicidad, usa una copia de seguridad en frío en la que la aplicación se cierra y la base de datos se monta y no se abre. (También puede utilizar Oracle Data Guard o la RMAN duplicación para realizar copias de seguridad. Sin embargo, este patrón no cubre esas opciones).

Para obtener información sobre cómo diseñar la arquitectura de Oracle E-Business Suite AWS para una alta disponibilidad y recuperación ante desastres, consulte el patrón Configuración de una arquitectura HA/DR para Oracle E-Business Suite en RDS Amazon Custom con una base de datos en espera activa.

nota

Este patrón proporciona enlaces a las notas de soporte de Oracle. Necesitará una cuenta de Oracle Support para acceder a estos documentos.

Requisitos previos y limitaciones

Requisitos previos 

  • Base de datos de origen Oracle versión 12.1.0.2 o 19c (mínimo 19.3) que se ejecute en Amazon EC2 con Oracle Linux 7 o Red Hat Enterprise Linux (RHEL) versión 7.x. Este patrón presupone que el nombre de la base de datos de origen es VIS, y que el nombre de la base de datos de contenedor adicional de Oracle 19c es VISCDB, pero puede usar otros nombres.

    nota

    También puede utilizar este patrón con las bases de datos de origen de Oracle locales, siempre que disponga de la conectividad de red adecuada entre la red local y Amazon Virtual Private Cloud (Amazon VPC).

  • Una aplicación de Oracle E-Business Suite, versión 12.2.x (instancia visual). Este procedimiento se ha probado en la versión 12.2.11.

  • Un único nivel de aplicación de Oracle E-Business Suite. Sin embargo, puede adaptar este patrón para que funcione con varios niveles de aplicación.

  • Para Oracle 12.1.0.2, Amazon RDS Custom se configuró con al menos 16 GB de espacio de intercambio. De lo contrario, la CD de ejemplo de 12c muestra una advertencia. (Oracle 19c no requiere la CD de ejemplo, como se menciona más adelante en este documento).

Antes de empezar la migración, realice los siguientes pasos:

  1. En la RDS consola de Amazon, cree una instancia de base de datos Amazon RDS Custom for Oracle con el nombre de la base de datos VIS (o el nombre de la base de datos de origen). Para obtener instrucciones, consulte Trabajar con Amazon RDS Custom en la AWS documentación y la entrada del blog Amazon RDS Custom for Oracle: New Control Capabilities in Database Environment. Este paso garantiza que la base de datos tenga el mismo nombre que la base de datos de origen. (Si se deja en blanco, el nombre de la EC2 instancia y la base de datos se establecerán enORCL.)  Asegúrese de crear su versión de motor personalizada (CEV) con, como mínimo, los parches que se han aplicado a la fuente. Para obtener más información, consulta Cómo preparar la creación de un CEV en la RDS documentación de Amazon.

    Nota para Oracle 19c: Actualmente, para Oracle 19c, el nombre de la base de datos del RDS contenedor de Amazon se puede personalizar. El valor predeterminado es RDSCDB. Asegúrese de crear la instancia de Oracle RDS personalizada con el mismo ID de sistema (SID) que en la instancia de origenEC2. Por ejemplo, en este patrón, SID se supone que el Oracle 19c está VISCDB en la instancia de origen. Por lo tanto, el objetivo de Oracle 19c en SID Amazon RDS Custom también debería ser. VISCDB

  2. Configure la instancia de base de datos Amazon RDS Custom con suficiente almacenamientoCPU, v y memoria para que coincida con la base de datos de EC2 origen de Amazon.  Para ello, puedes hacer coincidir los tipos de EC2 instancias de Amazon en función de v CPU y de memoria. 

  3. Cree un sistema de EFS archivos de Amazon y móntelo en las instancias Amazon EC2 y Amazon RDS Custom.  Para obtener instrucciones, consulte la entrada del EFS blog Integrar Amazon RDS Custom for Oracle con Amazon. Este patrón supone que ha montado el EFS volumen de Amazon /RMAN en las instancias de base de datos Amazon RDS Custom de origen EC2 y de destino, y que la conectividad de red es posible entre la fuente y el destino. También puedes usar el mismo método usando Amazon FSx o cualquier unidad compartida.

Supuestos

Este patrón presupone que la aplicación y la base de datos usan nombres de host lógicos, lo que reduce el número de pasos de migración. Puede ajustar estos pasos para usar nombres de host físicos, pero los nombres de host lógicos reducen la complejidad del proceso de migración. Para obtener más información acerca de las ventajas de usar nombres de host lógicos, consulte las siguientes notas de soporte:

  • Para 12c, nota de soporte de Oracle 2246690.1

  • Para 19c, nota de soporte de Oracle 2617788.1

Este patrón no cubre el escenario de actualización de Oracle 12c a 19c y se centra en migrar la misma versión de la base de datos de Oracle que se ejecuta en Amazon a EC2 Amazon RDS Custom for Oracle.

Amazon RDS Custom for Oracle admite la personalización de Oracle Home. (Oracle Home almacena los archivos binarios de Oracle). Puede cambiar la ruta predeterminada /rdsdbbin/oracle por una ruta especificada por usted, como /d01/oracle/VIS/19c. Para mayor simplicidad, en las instrucciones de este patrón se asume la ruta predeterminada /rdsdbbin/oracle.

Limitaciones

Este patrón no es compatible con las siguientes características y configuraciones:

  • Cómo establecer el parámetro ARCHIVE_LAG_TARGET de la base de datos en un valor fuera del rango de 60 a 7200

  • Cómo inhabilitar el modo de registro de la instancia de base de datos (NOARCHIVELOG

  • Desactivar el EBS-optimized atributo de la EC2 instancia

  • Modificación de los volúmenes originales de Amazon Elastic Block Store (AmazonEBS) adjuntos a la EC2 instancia

  • Añadir nuevos EBS volúmenes o cambiar el tipo de volumen de gp2 a gp3

  • Support for the TNS ifile

  • Cambiar la control_file ubicación y el nombre (debe ser/rdsdbdata/db/VISCDB_A/controlfile/control-01.ctl, ¿dónde VISCDB está el CDB nombre)

Para obtener información adicional sobre estas y otras configuraciones no compatibles, consulta Cómo corregir configuraciones no compatibles en la documentación de AmazonRDS.

Versiones de producto

Para ver las versiones y clases de instancias de Oracle Database compatibles con Amazon RDS Custom, consulte Disponibilidad y requisitos de Amazon RDS Custom for Oracle.

Arquitectura

El siguiente diagrama de arquitectura representa un sistema Oracle E-Business Suite que se ejecuta en una única zona de disponibilidad. AWS Se accede al nivel de aplicación a través de un Application Load Balancer, tanto la aplicación como las bases de datos se encuentran en subredes privadas, y el nivel Amazon Custom RDS y la EC2 base de datos de Amazon utilizan un sistema de archivos EFS compartidos de Amazon para almacenar y acceder a los RMAN archivos de respaldo.

Arquitectura para E-Business Suite en una única zona de disponibilidad en AWS

Herramientas

Servicios de AWS

  • Amazon RDS Custom for Oracle es un servicio de base de datos gestionado para aplicaciones heredadas, personalizadas y empaquetadas que requieren acceso al sistema operativo y al entorno de base de datos subyacentes. Amazon RDS Custom automatiza las tareas y operaciones de administración de bases de datos y le permite, como administrador de bases de datos, acceder y personalizar el entorno de base de datos y el sistema operativo. 

  • Amazon Elastic File System (AmazonEFS) es un sistema de archivos elástico, simple y sin servidor que permite añadir y eliminar archivos sin necesidad de administración ni aprovisionamiento. Este patrón utiliza un sistema de archivos EFS compartidos de Amazon para almacenar y acceder a los archivos RMAN de respaldo.

  • AWSSecrets Manager es un servicio AWS gestionado que le permite rotar, gestionar y recuperar fácilmente las credenciales de las bases de datos, API las claves y otra información secreta. Amazon RDS Custom almacena el key pair y las credenciales de usuario de la base de datos en Secrets Manager al crear la base de datos. En este patrón se recuperan las contraseñas de usuario de la base de datos de Secrets Manager para crear los usuarios RDSADMIN y ADMIN y cambiar las contraseñas de sys y sistema.

Otras herramientas

  • RMANes una herramienta que proporciona soporte de respaldo y recuperación para bases de datos Oracle. Este patrón se utiliza RMAN para realizar una copia de seguridad en frío de la base de datos Oracle de origen en Amazon EC2 que se restaura en Amazon RDS Custom.

Prácticas recomendadas

  • Use nombres de host lógicos. Esto reduce considerablemente la cantidad de scripts a ejecutar tras la clonación. Para obtener más información, consulte el documento de soporte de Oracle 2246690.1.

  • Amazon RDS Custom utiliza Oracle Automatic Memory Management (AMM) de forma predeterminada.  Si desea utilizar el núcleo hugemem, puede configurar Amazon RDS Custom para que utilice Automatic Shared Memory Management (ASMM) en su lugar.

  • Mantenga el parámetro memory_max_target habilitado de forma predeterminada. El marco usa este parámetro en segundo plano para crear réplicas de lectura.

  • Habilite la base de datos de Oracle Flashback. Esta característica resulta útil en escenarios de pruebas de conmutación por error (no de transición) para restablecer el modo de espera.

  • Para los parámetros de inicialización de la base de datos, personalice el estándar PFILE que proporciona la instancia de base de datos Amazon RDS Custom para Oracle E-Business Suite en lugar de utilizar el de la base de datos SPFILE de origen de Oracle. Esto se debe a que los espacios en blanco y los comentarios causan problemas al crear réplicas de lectura en Amazon RDS Custom. Para obtener más información acerca del parámetro de inicialización de la base de datos, consulte documento de soporte de Oracle 396009.1.

En la siguiente sección Épica, proporcionamos instrucciones independientes para las versiones 12.1.0.2 y 19c de Oracle.

Epics

TareaDescripciónHabilidades requeridas

Cierre la aplicación.

Para cerrar la aplicación de origen, ejecute estos comandos: 

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

Cree el archivo .zip.

Cree el archivo appsutil.zip en el nivel de aplicación de origen. Utilizará este archivo más adelante para configurar el nodo de base de datos Amazon RDS Custom.

$ perl $AD_TOP/bin/admkappsutil.pl
DBA

Copia el archivo.zip a AmazonEFS.

Copia appsutil.zip desde $INST_TOP/admin/out a tu EFS volumen compartido de Amazon (/RMAN/appsutil). Puedes transferir el archivo manualmente mediante secure copy (SCP) u otro mecanismo de transferencia.

DBA
TareaDescripciónHabilidades requeridas

Clonar previamente el nivel de base de datos en AmazonEC2.

Inicie sesión como usuario de Oracle y ejecute:

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

Compruebe el archivo de registro generado para confirmar que la operación se ha realizado correctamente.

DBA

Copia appsutil.zip al sistema de EFS archivos compartido de Amazon.

Crea una copia de seguridad en tar y $ORACLE_HOME/appsutil cópiala en el sistema de EFS archivos compartido de Amazon (por ejemplo,/RMAN/appsutil):

$ cd $ORACLE_HOME $ tar cvf sourceappsutil.tar appsutil $ cp sourceappsutil.tar /RMAN/appsutil
DBA
TareaDescripciónHabilidades requeridas

Cree un script de copia de seguridad.

Realice una copia de seguridad RMAN completa de la base de datos de origen en el sistema de EFS archivos compartido de Amazon.

Para simplificar, este patrón realiza una RMAN copia de seguridad en frío. Sin embargo, puede modificar estos pasos para realizar una RMAN copia de seguridad activa con Oracle Data Guard y reducir el tiempo de inactividad.

1. Inicie la EC2 base de datos de Amazon de origen en modo de montaje:

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

2. Cree un script de RMAN respaldo (utilice uno de los siguientes ejemplos, según su versión de Oracle, o ejecute uno de los RMAN scripts existentes) para hacer una copia de seguridad de la base de datos en el sistema de EFS archivos de Amazon que montó (/RMANen este ejemplo).

Para 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

Para 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

Ejecute el script de copia de seguridad.

Cambie los permisos, inicie sesión como usuario de Oracle y ejecute el script:

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

Compruebe que no haya errores y anote el nombre del archivo de copia de seguridad.

Compruebe si hay errores en el archivo de RMAN registro. Si todo está correcto, enumere la copia de seguridad del archivo de control. Anote el nombre del archivo de salida.

Para 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

Utilizará el archivo de respaldo /RMAN/visdb_full_bkp_100rlsbt más adelante, cuando restaure la base de datos en Amazon RDS Custom.

Para 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

Utilizará el archivo de respaldo /RMAN/cntrl.bak más adelante, cuando restaure la base de datos en Amazon RDS Custom.

DBA
TareaDescripciónHabilidades requeridas

Cambie el archivo de hosts y defina el nombre del host.

nota

Los comandos de esta sección deben ejecutarse como usuario root.

1. Edite el /etc/hosts archivo en la instancia de base de datos Amazon RDS Custom. Una forma sencilla de hacerlo es copiar las entradas de la base de datos y del host de la aplicación del archivo de hosts de la EC2 base de datos de Amazon de origen.

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

donde <IP-address> está la dirección IP del nodo de la base de datos, que debe reemplazar por la dirección IP RDS personalizada de Amazon. Los nombres de host lógicos se adjuntan a *log.

2. Cambie el nombre de host de la base de datos ejecutando el comando hostnamectl

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

Por ejemplo:

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

Para obtener información adicional, consulte el artículo del Centro de conocimiento sobre asignación de nombres de host estáticos.

3. Reinicie la instancia de base de datos Amazon RDS Custom.  No se preocupe por cerrar la base de datos, ya que la eliminará en un paso posterior.

$ reboot

4. Cuando la instancia de base de datos Amazon RDS Custom vuelva a funcionar, inicie sesión y compruebe que el nombre de host ha cambiado: 

$ hostname oebs-db01
DBA

Instale el software Oracle E-Business Suite.

Instale la Oracle E-Business Suite recomendada RPMs en la ubicación principal de Oracle en la instancia de base de datos Amazon RDS Custom. Para obtener más información, consulte la nota de soporte de Oracle #1330701.1. Lo siguiente es una lista parcial de los resultados. La RPM lista cambia en cada versión, así que asegúrese de que todas las versiones necesarias RPMs estén instaladas.

Como usuario raíz, ejecute:

$ 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++-*

Compruebe que todos los parches necesarios estén instalados antes de continuar con el siguiente paso.

DBA

Instale el VNC servidor.

nota

Puede omitir este paso para Oracle 19c porque el CD de ejemplos ya no es necesario; consulte la nota 2782085.1 de Oracle Support.

Para Oracle 12.1.0.2:

Instale el VNC servidor y sus paquetes de escritorio dependientes. Este paso es necesario para instalar la CD de ejemplos de 12c en el siguiente paso.

1. Como usuario raíz, ejecute:

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

2. Inicie el VNC servidor para rdsdb el usuario y establezca la contraseña paraVNC:

$ su - rdsdb $ vncserver :1 $ vncpassword
DBA

Instale la CD de ejemplos de 12c.

nota

Puede omitir este paso para Oracle 19c porque el CD de ejemplos ya no es necesario; consulte la nota 2782085.1 de Oracle Support.

Para Oracle 12.1.0.2:

1. Descargue los archivos de instalación desde/. https://edelivery.oracle.com  Para Oracle E-Business Suite 12.2.11 – Oracle Database 12c versión 1 (12.1.0.2), busque Examples for Linux x86-64 V100102-01.zip.

2. Cree un directorio para almacenar la CD de ejemplos:

$ mkdir /RMAN/12cexamples

3. Copie el archivo.zip del CD de ejemplos a este directorio mediante el mecanismo de transferencia que prefiera (por ejemplo,SCP):

V100102-01.zip

4. Cambie la propiedad a rdsdb:

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

5. Como usuario rdsdb, descomprima el archivo:

$ unzip V10010201.zip

6. Conéctese desde un cliente que tenga acceso al VNC cliente y a Amazon RDS Custom. Asegúrese de tener la conectividad de red y los puertos de firewall necesarios abiertos para permitir el accesoVNC. Por ejemplo, un VNC servidor que se esté ejecutando display :1 necesitará abrir el puerto 5901 en el grupo de seguridad asociado al EC2 host Amazon RDS Custom.

7. Acceda al directorio en el que ha copiado la CD de ejemplos:

$ cd /RMAN/12cexamples/examples

8. Ejecute el instalador.  Asegúrese de comprobar la ubicación del archivo oraInst.loc

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

9. Use los siguientes parámetros durante la instalación de la CD de ejemplos:  

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. El programa de instalación incluye cinco pasos con instrucciones.  Siga los pasos hasta completar la instalación. 

DBA
TareaDescripciónHabilidades requeridas

Pause el modo de automatización.

Debe pausar el modo de automatización en su instancia de base de datos Amazon RDS Custom antes de continuar con los siguientes pasos, para asegurarse de que la automatización no interfiera con la RMAN actividad.

Detenga la automatización mediante el siguiente AWS comando de la interfaz de línea de comandos (AWSCLI). (Asegúrese de haber configurado el AWS CLI primero).

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

Cuando especifique la duración de la pausa, asegúrese de dejar suficiente tiempo para la RMAN restauración. Este tiempo dependerá del tamaño de la base de datos de origen, por lo que deberá modificar el valor 360 en consecuencia.

DBA

Elimine la base de datos inicial.

Elimine la base de datos Amazon RDS Custom existente. 

Como usuario raíz de Oracle, ejecute los siguientes comandos. (El usuario por defecto es rdsdb, a menos que lo haya personalizado).

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

Cree directorios para almacenar los archivos de la base de datos.

Para Oracle 12.1.0.2:

Cree directorios para la base de datos, el archivo de control, los archivos de datos y el registro en línea. Use el directorio principal del parámetro control_files en el comando anterior (en este caso, VIS_A). Como usuario particular de Oracle (valor predeterminado, rdsdb), ejecute los siguientes comandos.

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

Para Oracle 19c:

Cree directorios para la base de datos, el archivo de control, los archivos de datos y el registro en línea. Use el directorio principal del parámetro control_files en el comando anterior (en este caso, VISCDB_A). Como usuario particular de Oracle (valor predeterminado, rdsdb), ejecute los siguientes comandos.

$ 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

Cree y modifique el archivo de parámetros de Oracle E-Business Suite.

En este paso, no copiará el archivo de parámetros del servidor (SPFILE) de la base de datos de origen. En su lugar, utilizará el archivo de parámetros estándar (PFILE) creado con la instancia de base de datos Amazon RDS Custom y agregará los parámetros que necesite para Oracle E-Business Suite.

Al eliminar la base de datos, la RDS automatización de Amazon crea una copia de seguridad del init.ora archivo, que está asociada a la base de datos Amazon RDS Custom. Este archivo se llama oracle_pfile y se encuentra en /rdsdbdata/config.

Para Oracle 12.1.0.2:

1. Copie /rdsdbdata/config/oracle_pfile en $ORACLE_HOME.

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

2. Edite el initVIS.ora archivo en la instancia de base de datos Amazon RDS Custom. Valide todos los parámetros de origen y añada los parámetros que necesite. Para obtener más información, consulte la nota de soporte de Oracle 396009.1.

importante

Asegúrese de que no haya comentarios en los parámetros que añada. Los comentarios provocarán problemas con la automatización, como la creación de réplicas de lectura y la emisión de point-in-time recuperaciones ()PITRs.

3. Añada al archivo initVIS.ora parámetros similares a los siguientes, en función de sus necesidades:

*.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. Modifique lo siguiente. Los valores dependerán de su sistema de origen. Revíselos en función de su configuración actual.

*.open_cursors=500 *.undo_tablespace='APPS_UNDOTS1

5. Elimine la referenciaSPFILE.

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

Notas:

  • No modifique los valores proporcionados por Amazon RDS Custom PFILE para control_files ydb_unique_name. Amazon RDS espera estos valores. Si los modifica, surgirán problemas en caso de que trate de crear una réplica de lectura en el futuro.

  • Amazon RDS Custom utiliza la gestión automática de memoria (AMM) de forma predeterminada. Si desea utilizar hugemem, puede configurar Amazon RDS Custom para que utilice la gestión automática de memoria compartida ()ASMM.  

  • Mantenga el parámetro memory_max_target habilitado de forma predeterminada. El RDS marco de Amazon lo usa en segundo plano para crear réplicas de lectura.

6. Confirme que no hay problemas con el archivo initVIS.ora ejecutando el comando startup nomount:

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

7. Cree un enlace simbólico paraSPFILE.

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

Para Oracle 19c:

1. Copie /rdsdbdata/config/oracle_pfile en $ORACLE_HOME.

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

2. Edite el initVISCDB.ora archivo en la instancia de base de datos Amazon RDS Custom. Valide todos los parámetros de origen y añada los parámetros que necesite. Para obtener más información, consulte la nota de soporte de Oracle 396009.1.

importante

Asegúrese de que no haya comentarios en los parámetros que añada.  Si hay comentarios, se producirán problemas con la automatización, como la creación de réplicas de lectura y la emisión de point-in-time recuperaciones ()PITRs.

3. Añada al archivo initVISCDB.ora parámetros similares a los siguientes, en función de sus necesidades.

*.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. Modifique lo siguiente. Los valores dependerán de su sistema de origen. Revíselos en función de su configuración actual.

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

5. Elimine la referenciaSPFILE:

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

Notas:

  • No modifique los valores proporcionados por Amazon RDS Custom PFILE para control_files ydb_unique_name. Amazon RDS espera estos valores. Si los modifica, surgirán problemas en caso de que trate de crear una réplica de lectura en el futuro.

  • Amazon RDS Custom utiliza la gestión automática de memoria (AMM) de forma predeterminada. Si desea utilizar hugemem, puede configurar Amazon RDS Custom para que utilice la gestión automática de memoria compartida ()ASMM.  

  • Mantenga el parámetro memory_max_target habilitado de forma predeterminada. El RDS marco de Amazon lo usa en segundo plano para crear réplicas de lectura.

6. Confirme que no hay problemas con el archivo initVISCDB.ora ejecutando el comando startup nomount:

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

7. Cree un enlace simbólico paraSPFILE.

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

Restaure la base de datos Amazon RDS Custom desde la copia de seguridad.

Para Oracle 12.1.0.2:

1. Restaure el archivo de control usando el archivo de copia de seguridad de origen que capturó anteriormente:

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. Catalogue las piezas de copia de seguridad para emitir un RMAN restore:

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

3. Cree un script para restaurar la base de datos:

$ 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. Restaure la fuente en la base de datos Amazon RDS Custom de destino. Deberá cambiar los permisos del script para permitir su ejecución y, a continuación, ejecutar el script restore.sh para restaurar la base de datos.

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

Para Oracle 19c:

1. Restaure el archivo de control usando el archivo de copia de seguridad de origen que capturó anteriormente:

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. Catalogue las piezas de copia de seguridad para emitir un RMAN restore:

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

Si tiene problemas con el comando start with, puede añadir las piezas de copia de seguridad de forma individual; por ejemplo: 

RMAN> catalog backuppiece '/RMAN/visdb_full_bkp_1d1e507m';

y, a continuación, ejecutar de nuevo el comando para cada pieza de copia de seguridad.

3. Cree un script para restaurar la base de datos. Modifique el nombre de la base de datos conectable en función de sus requisitos. Asigne los canales paralelos en función del número de canales vCPUs disponibles para acelerar el proceso de restauración.

$ 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. Restaure la fuente en la base de datos Amazon RDS Custom de destino. Deberá cambiar los permisos del script para permitir su ejecución y, a continuación, ejecutar el script restore.sh para restaurar la base de datos.

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

Compruebe los archivos de registro en busca de posibles problemas.

Para Oracle 12.1.0.2:

1. Revise el archivo rman.log para comprobar que no hay problemas:

$ cat /home/rdsdb/rman.log

2. Confirme la ruta de los archivos de registro registrados en el archivo de control:

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. Cambie el nombre de los archivos de registro para que coincidan con la ruta del archivo de destino. Sustituya la ruta de modo que coincida con el resultado del paso anterior:

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';

Para Oracle 19c:

1. Revise el archivo rmancdb.log para comprobar que no hay problemas:

$ cat /home/rdsdb/rmancdb.log

2. Confirme la ruta de los archivos de registro registrados en el archivo de control:

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. Cambie el nombre de los archivos de registro para que coincidan con la ruta del archivo de destino. Sustituya la ruta de modo que coincida con el resultado del paso anterior:

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. Confirme la ruta, el estado de los archivos de registro y el número de grupo registrado en el archivo de control:

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

Confirme que puede abrir la base de datos de Amazon RDS Custom y crear archivos de OMF registro.

Amazon RDS Custom for Oracle utiliza Oracle Managed Files (OMF) para simplificar las operaciones. Puede convertir las réplicas de lectura en instancias independientes, pero primero debe crear los archivos de registro utilizando. OMF Este paso garantiza que se use la ruta correcta al promover la instancia. Para obtener más información sobre cómo promover réplicas de lectura, consulte la RDSdocumentación de Amazon. Si no se utilizan OMF los archivos, es posible que se produzcan problemas al intentar promocionar las réplicas de lectura.

1. Abra la base de datos con resetlogs:

SQL> alter database open resetlogs;
nota

Si recibe el error ORA-00392: se está borrando el registro xx del subproceso 1, no se permite la operación, siga los pasos de la sección de solución de problemas del -00392. ORA

2. Confirme que la base de datos está abierta:

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

3. Cree los archivos de OMF registro. Cambie los números de grupo, el número y el tamaño de los grupos según sus necesidades usando el resultado de la anterior consulta del archivo de registro. El siguiente ejemplo comienza en el grupo 4 y agrega tres grupos para mayor simplicidad.

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. Elimine los archivos anteriores que no OMF sean archivos. Puede personalizar este ejemplo en función de sus necesidades y del resultado de la consulta de los pasos anteriores:

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.
nota

Si recibe el error ORA -01624 al intentar borrar los archivos de registro, consulte la sección de solución de problemas.

5. Confirme que puede ver los OMF archivos que se crearon. (La ruta del directorio varía para las versiones 12.1.0.2 y 19c de Oracle, pero el concepto es el mismo).

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. Reinicie la base de datos y confirme que la instancia la SPFILE está utilizando:

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

En el caso de Oracle 12.1.0.2, esta consulta devuelve:

spfile /rdsdbbin/oracle/dbs/spfileVIS.ora

En Oracle 19c, la consulta devuelve:

spfile /rdsdbbin/oracle/dbs/spfileVISCDB.ora

7. Solo en Oracle 19c, compruebe el estado de la base de datos del contenedor y ábralo si es necesario:

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. Elimine el init.ora archivo de$ORACLE_HOME/dbs, porque no está utilizandoPFILE:

$ cd $ORACLE_HOME/dbs

En Oracle 12.1.0.2, ejecute el comando:

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

En Oracle 19c, ejecute el comando:

$ pwd /rdsdbbin/oracle/dbs $ rm initVISCDB.ora
DBA
TareaDescripciónHabilidades requeridas

Recupere contraseñas de Secrets Manager.

Puede realizar estos pasos en la consola o mediante el AWSCLI. Los siguientes pasos proporcionan las instrucciones para hacerlo en la consola.

1. Inicie sesión en la consola AWS de administración y abra la RDS consola de Amazon en https://console.aws.amazon.com/rds/.

2. En el panel de navegación, elija Databases y, a continuación, seleccione la RDS base de datos de Amazon.

3. Seleccione Configuración y anote el ID de recurso de la instancia (tendrá el formato: db-WZ4WLCK6AOQ6TJGZKMGRCDCI3Y).

4. Abra la consola de AWS Secrets Manager en https://console.aws.amazon.com/secretsmanager/.

5. Seleccione el secreto que tenga el mismo nombre que do-not-delete-custom-<resource_id>. resource-id es la ID de instancia que anotó en el paso 3.

6. Seleccionar Retrieve secret value (Recuperar valor secreto).

DBA

Cree el usuario RDSADMIN.

RDSADMINes un usuario de la base de datos de supervisión y orquestación en la instancia de base de datos Amazon RDS Custom. Como la base de datos inicial se eliminó y la base de datos de destino se restauró desde el origen mediante el usoRMAN, debe volver a crear este usuario después de la operación de restauración para asegurarse de que la supervisión de Amazon RDS Custom funciona según lo esperado. También deberá crear un perfil y un espacio de tabla independientes para el usuario RDSADMIN. Las instrucciones son ligeramente diferentes para Oracle 12.1.0.2 y 19c.

Para Oracle 12.1.0.2:

1. Introduzca los siguientes comandos cuando se SQL le solicite:

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. Cree el perfil 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. Configure los perfiles de usuario SYS, SYSTEM y DBSNMP como 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. Cree el espacio de tabla RDSADMIN:

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. Cree el usuario RDSADMIN. Sustituya la contraseña RDSADMIN por la contraseña que obtuvo anteriormente de Secrets Manager:

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

6. Otorgue privilegios a 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

Para Oracle 19c:

1. Introduzca los siguientes comandos cuando se SQL le solicite:

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. Cree el perfil RDSADMIN.

nota

RDSADMINtiene el prefijo de C## en Oracle 19c. Esto se debe a que el parámetro de la base de datos common_user_prefix está establecido en. C## RDSADMINno tiene prefijo en 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. Configure los perfiles de usuario SYS, SYSTEM y DBSNMP como RDSADMIN:

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

4. Cree el espacio de tabla RDSADMIN:

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. Cree el usuario RDSADMIN. Sustituya la contraseña RDSADMIN por la contraseña que obtuvo anteriormente de Secrets Manager.

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

6. Otorgue privilegios a 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

Cree el usuario maestro.

Como la base de datos inicial se eliminó y la base de datos de destino se restauró desde el origen mediante el usoRMAN, debe volver a crear el usuario maestro. En este ejemplo, el usuario principal es admin.

Para Oracle 12.1.0.2:

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

Para 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

Cambie las contraseñas de los superusuarios.

1. Cambie las contraseñas del sistema usando la contraseña que obtuvo de Secrets Manager.

Para Oracle 12.1.0.2:

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

Para Oracle 19c:

SQL> alter user sys identified by xxxxxxxxxxx container=all; SQL> alter user system identified by xxxxxxxxxx container=all;
  1. Cambie la contraseña EBS_SYSTEM.

Para Oracle 12.1.0.2:

SQL> alter user ebs_system identified by xxxxxxxxxx;

Para Oracle 19c:

En esta versión, también debe conectarse a la base de datos del contenedor para actualizar allí la contraseña de EBS_SYSTEM.

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

Si no cambias estas contraseñas, Amazon RDS Custom mostrará el mensaje de error: El usuario o las credenciales de usuario que supervisa la base de datos han cambiado.

DBA
TareaDescripciónHabilidades requeridas

Cree los directorios necesarios para Oracle E-Business Suite.

1. En la base de datos Amazon RDS Custom Oracle, ejecute el siguiente script como usuario principal de Oracle para crear el 9idata directorio en$ORACLE_HOME/nls/data/9idata. Estos directorios son necesarios para Oracle E-Business Suite.

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

Ignore el mensaje ORA_NLS10, ya que creará el entorno adaptado al contexto en pasos posteriores.

2. Copie el appsutil.tar archivo, que creó anteriormente desde el sistema de EFS archivos compartido de Amazon, y descomprima en el directorio principal de Amazon RDS Custom Oracle.  Cree el directorio de appsutil en el directorio $ORACLE_HOME.

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

3. Copia el appsutil.zip archivo que guardaste anteriormente en el sistema de archivos EFS compartidos de Amazon.  Este es el archivo que creó en el nivel de la aplicación.

Como rdsdb usuario de la instancia de base de datos Amazon RDS Custom:

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

4. Descomprima el archivo appsutil.zip para crear el directorio appsutil y los subdirectorios en el directorio principal de Oracle:

$ unzip -o appsutil.zip

La opción -o implica que algunos de los archivos se sobreescribirán.

Configure los archivos tsanames.ora y sqlnet.ora.

Debe configurar el archivo tnsnames.ora para poder conectarse a la base de datos con la herramienta Autoconfig. En el siguiente ejemplo, puede ver que el archivo tnsnames.ora tiene un enlace simbólico, pero está vacío de forma predeterminada.

$ 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. Cree la entrada tnsnames.ora. Debido a la forma en que Amazon RDS Automation analiza los archivos, debes asegurarte de que la entrada no contenga espacios en blanco, comentarios o líneas adicionales. De lo contrario, es posible que tenga problemas al utilizar algunos de ellosAPIs, como create-db-instance-read -replica. Utilice lo siguiente como ejemplo.    

2. Reemplace el puerto, el host y, SID de acuerdo con sus requisitos:

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

No debe haber líneas adicionales en el archivo. Si no elimina las líneas, pueden surgir problemas al crear una réplica de lectura en el futuro. Es posible que se produzca un error al crear una réplica de lectura y aparezca el siguiente mensaje de error: La actividad arrojó una excepción HostManagerException:: No se pudo llamar restrictReplication correctamente a ningún host.

3. Confirme que se puede acceder a la base de datos:

$ tnsping vis OK (0 msec)

4. Solo en Oracle 19c, actualice el archivo sqlnet.ora. De lo contrario, se generará el error ORA-01017: nombre de usuario o contraseña no válidos; se denegará el inicio de sesión al intentar conectarse a la base de datos. Edite sqlnet.ora en $ORACLE_HOME/network/admin para que coincida con lo siguiente:

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. Prueba de conectividad:

$ sqlplus apps/****@vis
DBA

Configuración de la base de datos.

Ahora que ha probado la conectividad con la base de datos, puede configurar la base de datos con la utilidad appsutil para crear un entorno adaptado al contexto.

Para Oracle 12.1.0.2:

1. Ejecute los siguientes comandos :

$ 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. Cree oraInst.loc desde el usuario raíz:

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

3. Clone el archivo de contexto para establecer el nombre de host lógico con el archivo de contexto que ha creado en el paso anterior. Como usuario rdsdb, ejecute:

$ 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 es el nombre de host lógico. Por ejemplo:

$ 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

Para Oracle 19c:

1. Ejecute los siguientes comandos :

$ 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. Cree oraInst.loc desde el usuario raíz:

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

3. Clone el archivo de contexto para establecer el nombre de host lógico con el archivo de contexto que ha creado en el paso anterior. Como usuario rdsdb, ejecute:

$ 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 es el nombre de host lógico. Por ejemplo:

$ 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

Instale y ejecute Autoconfig. ETCC

1. Instale el comprobador de nivel de código tecnológico Oracle E-Business Suite (). ETCC 

Descargue el parche 17537119 de My Oracle Support y siga las instrucciones que se indican en README.txt. Cree un directorio llamado etcc en el directorio $ORACLE_HOME, descomprima el parche para crear un script llamado checkMTpatch.sh y, a continuación, ejecute el script para comprobar las versiones del parche.

2. Ejecute la utilidad Autoconfig y pase el nuevo archivo de contexto del nombre de host lógico.

Para 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

Para Oracle 19c:

Autoconfig espera que el nombre del oyente sea CDBNAME. Por lo tanto, el archivo de configuración del oyente original de la copia de seguridad usará L_<CDBNAME>_001 temporalmente.

$ 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>
nota

Si los directorios de la base de datos han cambiado, siga las instrucciones de la nota 2525754.1 de Oracle Support Note.

DBA
TareaDescripciónHabilidades requeridas

Configure las TNS entradas para Amazon RDS Custom y Oracle E-Business Suite.

Autoconfig genera los TNS ifiles en las ubicaciones por defecto. Para Oracle 12.1.0.2 (que no es una opciónCDB) y para Oracle19c, la ubicación por defecto PDB es. $ORACLE_HOME/network/admin/$<CONTEXT_NAME> En el CDB caso de Oracle 19c, se utiliza el valor predeterminado$ORACLE_HOME/network/admin/, tal y como se define $TNS_ADMIN en los archivos de entorno que se generaron al ejecutar Autoconfig en los pasos anteriores.

Para Oracle 12.1.0.2 y 19cCDB, no los usará porque los listener.ora archivos tnsnames.ora y generados por Autoconfig no cumplen con los RDS requisitos de Amazon, por ejemplo, no hay espacios en blanco ni comentarios. En su lugar, utilizas los archivos genéricos que se proporcionan con la base de datos de Amazon RDS Custom para garantizar que se cumplen las expectativas del sistema y reducir el margen de error. 

Por ejemplo, Amazon RDS Custom espera el siguiente formato de nomenclatura:

L_<INSTANCE_NAME>_001

En el caso de Oracle 12.1.0.2, sería:

L_VIS_001

En el caso de Oracle 19c, sería:

L_VISCDB_001

Este es un ejemplo del archivo listener.ora que va a utilizar. Se generó al crear la base de datos Amazon RDS Custom. Aún no ha realizado ningún cambio en este archivo, y lo dejará como predeterminado.

Para 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

En Oracle 19c: restaure el archivo listener.ora original con el nombre de oyente 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)))

Inicie el listener L_<INSTANCE_NAME>_001 para las RDS operaciones estándar de Amazon:

$ lsnrctl stop $ lsnrctl start L_VISCDB_001

Para Oracle 12.1.0.2:

Edite el archivo de entorno de Oracle E-Business Suite para cambiar la $TNS_ADMIN ruta y utilizar los TNS ifiles genéricos de Amazon RDS Custom. El archivo de entorno se ha creado al ejecutar Autoconfig anteriormente. Edite la variable TNS_ADMIN eliminando el sufijo <CONTEXT_NAME>.  

nota

Debe editar el archivo de entorno únicamente en Oracle 12.1.0.2, ya que el directorio principal predeterminado de 19c es$ORACLE_HOME/network/admin, que es el mismo que el predeterminado de Amazon Custom. RDS

Por ejemplo, en Oracle 12.1.0.2, edite el archivo:

$ vi $ORACLE_HOME/VIS_oebs-db01log.env

Cambie la ruta de: 

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

a:

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

Cada vez que ejecute Autoconfig, debe repetir este paso para asegurarse de que se utilizan los TNS ifiles correctos (solo 12.1.0.2).

Para Oracle 19c:

1. Cambie el valor de la variable de contexto del nivel de la base de datos s_cdb_tnsadmin a <ORACLE_HOME>/network/admin en lugar de <ORACLE_HOME>/network/admin/<CONTEXT_NAME>.

nota

No actualice la variable de contexto. s_db_tnsadmin Guárdelo como <ORACLE_HOME>/network/admin/<CONTEXT_NAME>.

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

2. Guarde los cambios realizados en el valor de s_cdb_tnsadmin.

Los valores de s_db_tnsadmin y s_cdb_tnsadmin deben ser similares a los siguientes, con el PDB nombre como VIS y el nombre lógico del nodo de la base de datos comooebs-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. Ejecute Autoconfig en el nivel de base de datos:

$ . $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

Configure el entorno para el usuario rdsdb.

Omita este paso en el caso de Oracle 19c.

Para Oracle 12.1.0.2:

Ahora que ha completado la configuración automática y TNS las entradas, debe cargar el archivo de entorno configurándolo en el perfil del rdsdb usuario.

Actualice .bash_profile para llamar al archivo de base de datos .env de Oracle E-Business Suite. Debe actualizar el perfil para asegurarse de que el entorno esté cargado. El archivo de entorno se ha creado al ejecutar Autoconfig anteriormente.

Al ejecutar Autoconfig, se crea el siguiente archivo de entorno de ejemplo:

. /rdsdbbin/oracle/VIS_oebs-db01log.env

Como usuario rdsdb:

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
nota

 En el caso de Oracle 19c, no es necesario cargar el CDB entorno. .bash_profile Esto se debe a que el valor predeterminado ORACLE_HOME es la ruta predeterminada $ORACLE_HOME/network/admin, igual al directorio raíz predeterminado del usuario rdsdb (principal de Oracle).

DBA

Configure la aplicación y la base de datos para Amazon RDS Custom.

Complete los dos primeros pasos en Oracle 12.1.0.2 y 19c. Los siguientes pasos difieren según la versión.

1. En el nivel de aplicación, edite /etc/hosts y cambie la dirección IP de la base de datos por la dirección IP RDS personalizada de Amazon:

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

Al usar nombres de host lógicos, puede reemplazar el nodo de la base de datos con total fluidez.

2. En la instancia de base de datos Amazon RDS Custom, añada o modifique el grupo de seguridad asignado a la EC2 instancia de origen para que refleje la instancia de base de datos Amazon RDS Custom, a fin de garantizar que la aplicación pueda acceder al nodo.

Para Oracle 12.1.0.2:

3. Ejecute Autoconfig. Como propietario de la aplicación (por ejemplo, applmgr), ejecute:

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

4. Compruebe las entradas de fnd_nodes:

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

5. Confirme que puede iniciar sesión e iniciar la aplicación:

$ ./adstrtal.sh

Para Oracle 19c:

  1. Compruebe si PDB está abierto y ábralo si es necesario:

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. Prueba de conectividad como apps:

SQL> sqlplus apps/****@vis

3. Ejecute Autoconfig en el nivel de base de datos:

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

4. Ejecute Autoconfig en el nivel de aplicación como propietario de la aplicación (por ejemplo, applmgr):

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

5. Compruebe las entradas de fnd_nodes:

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

6. Iniciar la aplicación:

$ ./adstrtal.sh
DBA
TareaDescripciónHabilidades requeridas

Reanude la automatización para confirmar que funciona.

Reanude la automatización mediante el siguiente AWS CLI comando:

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

Amazon RDS Custom gestiona ahora la base de datos. Por ejemplo, si el listener o la base de datos dejan de funcionar, el agente de Amazon RDS Custom los reiniciará. Para ello, ejecute los siguientes comandos.

Ejemplo de detención de oyente:

-bash-4.2$ lsnrctl stop vis

Ejemplo de cierre de base de datos:

SQL> shutdown immediate;
DBA

Valide el esquema, las conexiones y las tareas de mantenimiento.

Para finalizar la migración debe realizar, como mínimo, las siguientes tareas.

  • Ejecute FS_CLONE para sincronizar el sistema de archivos de parches.

  • Recopile las estadísticas del esquema. 

  • Asegúrese de que las interfaces y los sistemas externos puedan conectarse a la nueva base de datos de Amazon RDS Custom.

  • Configure las copias de seguridad y la programación de mantenimiento.

  • Compruebe que AD Online Patching (ADOP) funciona según lo previsto. Para ello, ejecute una transición para cambiar los sistemas de archivos.

DBA

Resolución de problemas

ProblemaSolución

Aparece un error ORA -01624 cuando intenta eliminar los archivos de registro.

Si recibes un error ORA -01624 al intentar eliminar los archivos de registro, sigue estos pasos.

Ejecute el siguiente comando y espere hasta que el estado de los archivos de registro que desea eliminar sea INACTIVE. Para obtener más información acerca de los códigos de estado en V$log, consulte la documentación de Oracle. A continuación, se muestra un ejemplo de comando y su resultado:

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

En este ejemplo, el archivo de registro 1 es ACTIVE, por lo que debe forzar el cambio de un archivo de registro tres veces para asegurarse de que el primer archivo de registro nuevo que agregó anteriormente tenga el estado CURRENT:

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

Espere a que todos los archivos de registro que desea eliminar tengan el estado INACTIVE, como en el ejemplo siguiente, y ejecute el comando DROP LOGFILE.

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

Aparece un error ORA -00392 al abrir la base de datos con. resetlogs

Si recibe el error ORA -00392: se está borrando el registro xx del subproceso 1, no se permite la operación, ejecute el siguiente comando (xxsustitúyalo por el número del archivo de registro) y, a continuación, vuelva a ejecutar el comando open: resetlogs

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

Tiene problemas para conectarse a la aplicación mediante Sysadmin o el usuario de la aplicación.

Para confirmar el problema, ejecuta la siguiente consulta: SQL

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)

Causa principal: la base de datos de origen se aplicó con varios parches, pero Amazon RDS Custom DB_HOME es una instalación nueva o CEV no incluía todos los parches porque no utilizó los RSU parches necesarios, por ejemploOJVM, cuando creó elCEV. Para validar esto, compruebe si los detalles del parche de origen aparecen en $ORACLE_HOME/sqlpath$ORACLE_HOME/.patch_storage, yopatch – lsinventory.

Referencia: datapatch -verbose Fails with Error :" Patch xxxxxx: Archived Patch Directory Is Empty" (Doc ID 2235541.1)

Corrección: copia los archivos relacionados con el parche que faltan de la fuente ($ORACLE_HOME/sqlpatch/) a Amazon RDS Custom ($ORACLE_HOME/sqlpatch/) y, a continuación, vuelve a ejecutarlos. ./datapatch -verbose

Por ejemplo:

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

Como alternativa, puede utilizar una solución alternativa ejecutando el siguiente comando en cualquier momento: CDB PDB

@?/javavm/install/update_javavm_db.sql

A continuación, ejecute el siguiente comando en: PDB

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

Ejecute de nuevo la prueba:

SQL> select dbms_java.get_jdk_version() from dual;

Recursos relacionados

Información adicional

Operaciones de mantenimiento

Parchear la base de datos de Oracle E-Business Suite con nuevos parches

Como el volumen bin (/rdsdbbin) es una out-of-place actualización, el contenido del volumen bin se elimina durante la actualización. CEV Por lo tanto, debe crear una copia del appsutil directorio antes de realizar cualquier actualización medianteCEV.

En la instancia Amazon RDS Custom de origen, antes de actualizarlaCEV, realice una copia de seguridad de$ORACLE_HOME/appsutil.

nota

En este ejemplo se utiliza un NFS volumen. Sin embargo, puede usar una copia de Amazon Simple Storage Service (Amazon S3) en su lugar.

1. Cree un directorio para almacenar appsutil en la instancia Amazon RDS Custom de origen:

$ mkdir /RMAN/appsutil.preupgrade

2. Alquitrán y copia al EFS volumen de Amazon:

$ tar cvf /RMAN/appsutil.preupgrade appsutil

3. Compruebe que el archivo tar existe:

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

4. Actualice a la última versión CEV (el requisito previo ya CEV está creado) siguiendo las instrucciones de Actualización de una instancia de base de datos RDS personalizada (en la RDS documentación de Amazon).

También puede aplicar el parche directamente utilizandoOPATCH. Consulte la sección Requisitos y consideraciones para las actualizaciones RDS personalizadas para Oracle de la RDS documentación de Amazon.

nota

La dirección IP de la máquina host no cambia durante el proceso de aplicación de CEV parches. Este proceso realiza una out-of-place actualización y, durante el inicio, se adjunta un nuevo volumen bin a la misma instancia.