Migre de Oracle 8i o 9i a Amazon RDS for Postgre SQL mediante vistas materializadas y AWS DMS - 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 de Oracle 8i o 9i a Amazon RDS for Postgre SQL mediante vistas materializadas y AWS DMS

Creado por Kumar Babu P G () y Pragnesh Patel () AWS AWS

Entorno: PoC o piloto

Origen: Oracle 8i o 9i

Objetivo: Amazon compatible RDS con Postgre o SQL Aurora Postgre SQL

Tipo R: renovar arquitectura

Carga de trabajo: Oracle

Tecnologías: Migración; bases de datos

AWSservicios: AmazonRDS; Amazon Aurora

Resumen

Este patrón describe cómo migrar una base de datos Oracle 8i o 9i antigua local a Amazon Relational Database Service (Amazon) for Postgre SQL o RDS Amazon Aurora Postgre -Compatible Edition. SQL 

AWSDatabase Migration Service (AWSDMS) no admite Oracle 8i o 9i como fuente, por lo que este patrón utiliza una instancia de base de datos Oracle intermedia compatible AWSDMS, como Oracle 10g u 11g. También utiliza la característica de vistas materializadas para migrar los datos de la instancia 8i/9i de origen de Oracle a la instancia intermedia 10g/11g de Oracle.

AWSSchema Conversion Tool (AWSSCT) convierte el esquema de la base de datos y AWS DMS migra los datos a la base de datos SQL Postgre de destino. 

Este patrón ayuda a los usuarios que desean migrar desde bases de datos de Oracle heredadas con un tiempo de inactividad mínimo. En esta implementación, el tiempo de inactividad se limita al tiempo que se tarda en crear o validar todas las claves externas, activadores y secuencias en la base de datos de destino. 

El patrón utiliza instancias de Amazon Elastic Compute Cloud (AmazonEC2) con una base de datos Oracle 10g/11g instalada para ayudar a AWS DMS transmitir los datos. Puede pausar temporalmente la replicación de streaming desde la base de datos Oracle local a la instancia intermedia de Oracle para ponerse AWS DMS al día con la validación de datos o utilizar otra herramienta de validación de datos. La SQL instancia de base de datos de Postgre y la base de datos intermedia de Oracle tendrán los mismos datos cuando AWS DMS haya terminado de migrar los cambios actuales.

Requisitos previos y limitaciones

Requisitos previos 

  • Una cuenta activa AWS

  • Una base de datos de Oracle 8i o 9i de origen en un centro de datos en las instalaciones 

  • AWSDirect Connect configurado entre el centro de datos local y AWS

  • Controladores de conectividad de bases de datos Java (JDBC) para AWS SCT conectores instalados en una máquina local o en la EC2 instancia en la AWS SCT que están instalados

  • Familiaridad con el uso de una base de datos Oracle como fuente AWS DMS

  • Familiaridad con el uso de una base de datos de Postgre SQL como destino AWS DMS

Limitaciones

  • El límite de tamaño de la base de datos es de 64 TB

Versiones de producto

  • Oracle 8i o 9i para la base de datos de origen

  • Oracle 10g o 11g para la base de datos intermedia

  • Postgre 10.17 o posterior SQL

Arquitectura

Pila de tecnología de origen

  • Base de datos de Oracle 8i o 9i 

Pila de tecnología de destino

  • Amazon RDS para Postgre o SQL Aurora Compatible con Postgre SQL

Arquitectura de destino

Arquitectura para migrar de una base de datos Oracle heredada a Amazon RDS o Aurora

Herramientas

  • AWSDMSayuda a migrar las bases de datos de forma rápida y segura. La base de datos de origen permanece totalmente operativa durante la migración, minimizando así el tiempo de inactividad de las aplicaciones que dependen de ella. AWSDMSpuede migrar sus datos hacia y desde las bases de datos comerciales y de código abierto más utilizadas.

  • AWSSCTconvierte automáticamente el esquema de la base de datos de origen y la mayoría de los objetos de código de la base de datos, incluidas las vistas, los procedimientos almacenados y las funciones, a un formato compatible con la base de datos de destino. Los objetos que no se conviertan automáticamente se marcan claramente para que puedan convertirse manualmente con el objetivo de completar la migración. AWSSCTtambién puede escanear el código fuente de la aplicación en busca de SQL sentencias incrustadas y convertirlas como parte de un proyecto de conversión de esquemas de bases de datos. Durante este proceso, optimiza AWS SCT el código nativo de la nube al convertir las funciones antiguas de Oracle y SQL Server en sus AWS equivalentes, para ayudarle a modernizar sus aplicaciones mientras migra sus bases de datos. Cuando se completa la conversión del esquema, AWS SCT puede ayudar a migrar datos de una variedad de almacenes de datos a Amazon Redshift mediante el uso de agentes de migración de datos integrados.  

Prácticas recomendadas

Para conocer las prácticas recomendadas para actualizar las vistas materializadas, consulte la siguiente documentación de Oracle:

Epics

TareaDescripciónHabilidades requeridas

Configure la red para la EC2 instancia.

Cree la nube privada virtual (VPC), las subredes, la puerta de enlace a Internet, las tablas de enrutamiento y los grupos de seguridad.

AWS SysAdmin

Cree la EC2 instancia.

Selecciona Amazon Machine Image (AMI) para la EC2 instancia. Elige el tamaño de la instancia y configura los detalles de la instancia: el número de instancias (1), la subred VPC y del paso anterior, la asignación automática de la IP pública y otras opciones. Agregue almacenamiento, configure grupos de seguridad y lance la instancia. Cuando se le pida, cree y guarde un par de claves para el siguiente paso.

AWS SysAdmin

Instale Oracle en la EC2 instancia.

Adquiera las licencias y los binarios de Oracle necesarios e instale Oracle 10g u 11g en la instancia. EC2

DBA

Configure las redes de Oracle.

Modifique o añada entradas en listener.ora para conectarse a la base de datos de Oracle 8i/9i de origen en las instalaciones y, a continuación, cree los enlaces de la base de datos.

DBA

Cree vistas materializadas.

Identifique los objetos de la base de datos que desee replicar en la base de datos de Oracle 8i/9i de origen y, a continuación, cree vistas materializadas de todos los objetos mediante el enlace a la base de datos.

DBA

Implemente scripts para actualizar las vistas materializadas a los intervalos necesarios.

Desarrolle e implemente scripts para actualizar las vistas materializadas a los intervalos requeridos en la instancia Amazon EC2 Oracle 10g/11g. Utilice la opción de actualización incremental para refrescar las vistas materializadas.

DBA
TareaDescripciónHabilidades requeridas

Configurar. AWS SCT

Cree un nuevo informe y, a continuación, conéctese a Oracle como origen y a Postgre SQL como destino. En la configuración del proyecto, abra la pestaña SQLScripting. Cambie el SQL script de destino a Varios archivos. (AWSSCTno es compatible con las bases de datos Oracle 8i/9i, por lo que debe restaurar el volcado exclusivo del esquema en la instancia intermedia de Oracle 10g/11g y utilizarlo como fuente). AWS SCT

DBA

Convertir el esquema de base de datos de Oracle.

En la pestaña Acción, selecciona Generar informe, Convertir esquema y, a continuación, Guardar como. SQL

DBA

Modifique los SQL scripts.

Realice las modificaciones en función de las prácticas recomendadas. Por ejemplo, cambie a los tipos de datos adecuados y desarrolle SQL equivalentes en Postgre para funciones específicas de Oracle.

DBA, Dev DBA
TareaDescripciónHabilidades requeridas

Cree la RDS instancia de base de datos de Amazon.

En la RDS consola de Amazon, cree una nueva instancia de base de datos de PostgreSQL.

AWS SysAdmin, DBA

Configure la instancia de base de datos.

Especifique la versión del motor de base de datos, la clase de instancia de base de datos, la implementación Multi-AZ, el tipo de almacenamiento y el almacenamiento asignado. Introduzca el identificador de la instancia de base de datos, un nombre de usuario maestro y una contraseña maestra.

AWS SysAdmin, DBA

Configurar la red y la seguridad.

Especifique el grupo de subredesVPC, la accesibilidad pública, la preferencia de zona de disponibilidad y los grupos de seguridad.

DBA, SysAdmin

Configurar las opciones de la base de datos.

Especifique el nombre, el puerto, el grupo de parámetros, el cifrado y la clave maestra de la base de datos.

DBA, AWS SysAdmin

Configure copias de seguridad.

Especifique el período de retención de la copia de seguridad, la ventana de copia de seguridad, la hora de inicio, la duración y si desea copiar las etiquetas a las instantáneas.

AWS SysAdmin, DBA

Configure las opciones de monitoreo.

Habilite y desactive la monitorización mejorada de información sobre rendimiento.

AWS SysAdmin, DBA

Configurar las opciones de mantenimiento.

Especifique la actualización automática de la versión secundaria, el período de mantenimiento y el día, la hora y la duración de inicio.

AWS SysAdmin, DBA

Ejecute los scripts previos a la migración desde. AWS SCT

En la SQL instancia de Amazon RDS for Postgre de destino, cree el esquema de base de datos utilizando los SQL scripts de AWS SCT con otras modificaciones. Estas pueden incluir la ejecución de varios scripts e incluir la creación de usuarios, la creación de bases de datos, la creación de esquemas, tablas, vistas, funciones y otros objetos de código.

AWS SysAdmin, DBA
TareaDescripciónHabilidades requeridas

Cree una instancia de replicación en AWSDMS.

Complete los campos para el nombre, la clase de instancia VPC (igual que para la EC2 instancia), la zona de disponibilidad múltiple y la accesibilidad pública. En la sección de configuración avanzada, especifique el almacenamiento asignado, el grupo de subredes, la zona de disponibilidad, los grupos de VPC seguridad y la AWS clave del Servicio de administración de claves (AWSKMS).

AWS SysAdmin, DBA

Cree el punto de conexión de origen de la base de datos.

Especifique el nombre del punto final, el tipo, el motor de origen (Oracle), el nombre del servidor (el DNS nombre privado de la EC2 instancia), el puerto, el SSL modo, el nombre de usuarioSID, la contraseña VPC (especifique el VPC que tiene la instancia de replicación) y la instancia de replicación. Para probar la conexión, seleccione Ejecutar prueba y, a continuación, cree el punto de conexión. También puede configurar los siguientes ajustes avanzados: maxFileSizey numberDataTypeScale.

AWS SysAdmin, DBA

Conéctese AWS DMS a Amazon RDS para PostgreSQL.

Cree un grupo de seguridad de migración para todas las conexionesVPCs, si su SQL base de datos de Postgre está en otra. VPC

AWS SysAdmin, DBA

Cree puntos de conexión de base de datos de destino.

Especifique el nombre, el tipo, el motor de origen (PostgreSQL), el nombre del servidor (Amazon RDS Endpoint), el puerto, el SSL modo, el nombre de usuario, la contraseña, el nombre de la base de datos VPC (especifique el VPC que tiene la instancia de replicación) y la instancia de replicación. Para probar la conexión, seleccione Ejecutar prueba y, a continuación, cree el punto de conexión. También puede configurar los siguientes ajustes avanzados: maxFileSizey numberDataType Scale.

AWS SysAdmin, DBA

Cree la tarea AWS DMS de replicación.

Especifique el nombre de la tarea, la instancia de replicación, los puntos de conexión de origen y destino y la instancia de replicación. Para tipo de migración, seleccione la opción Migrate existing data and replication ongoing changes (Migración de los datos existentes y réplica de los cambios en curso). Desactive la casilla Start task on create (Iniciar la tarea al crearla).

AWS SysAdmin, DBA

Configure los ajustes de la tarea de AWS DMS replicación.

Para el modo de preparación de la tabla de destino, elija No hacer nada. Detenga la tarea cuando se complete la carga completa para crear las claves principales. Especifique el LOB modo limitado o completo y habilite las tablas de control. Si lo desea, puede configurar la configuración CommitRateavanzada.

DBA

Configure las asignaciones de tablas.

En la sección Table mappings (Mapeos de tabla), cree una regla de inclusión para todas las tablas de todos los esquemas incluidos en la migración y, a continuación, cree una regla de exclusión. Agregue tres reglas de transformación para convertir los nombres del esquema, la tabla y las columnas a minúsculas y añada cualquier otra regla necesaria para esta migración específica.

DBA

Iniciar la tarea.

Iniciar la tarea de replicación. Asegúrese de que la carga completa está ejecutando. Ejecute ALTER SYSTEM SWITCH LOGFILE en la base de datos principal de Oracle para iniciar la tarea.

DBA

Ejecute los scripts de mitad de migración desde AWSSCT.

En Amazon RDS para PostgreSQL, ejecute los siguientes scripts: create_index.sql y create_constraint.sql (si el esquema completo no se creó inicialmente).

DBA

Reanude la tarea para seguir cambiando la captura de datos ()CDC.

Ejecute VACUUM en la SQL instancia de base de datos Amazon RDS for Postgre y reinicie la AWS DMS tarea para aplicar los cambios en cachéCDC.

DBA
TareaDescripciónHabilidades requeridas

Compruebe los AWS DMS registros y las tablas de validación.

Compruebe y corrija cualquier error de replicación o validación.

DBA

Deje de utilizar la base de datos de Oracle en las instalaciones y sus dependencias.

Detenga todas las dependencias de Oracle, cierre los oyentes de la base de datos de Oracle y ejecute ALTER SYSTEM SWITCH LOGFILE. Detenga la AWS DMS tarea cuando no muestre actividad.

DBA

Ejecute los scripts posteriores a la migración desde AWSSCT.

En Amazon RDS para PostgreSQL, ejecute estos scripts:. create_foreign_key_constraint.sql and create_triggers.sql Asegúrese de que las secuencias estén actualizadas.

DBA

Complete los pasos adicionales de Amazon RDS for Postgre. SQL

Aumente las secuencias para que coincidan con las de Oracle si es necesario, ejecute VACUUM y ANALYZE y ANALYZE, y tome una instantánea para comprobar la conformidad.

DBA

Abre las conexiones a Amazon RDS for PostgreSQL.

Elimine los grupos de AWS DMS seguridad de Amazon RDS for PostgreSQL, añada grupos de seguridad de producción y dirija sus aplicaciones a la nueva base de datos.

DBA

Limpia los objetos. AWS DMS

Elimine los puntos finales, las tareas de replicación, las instancias de replicación y la EC2 instancia.

SysAdmin, DBA

Recursos relacionados