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.
Migración de Oracle 8i o 9i a Amazon RDS para PostgreSQL mediante la vista materializada y AWS DMS
Creado por Kumar Babu P G (AWS) y Pragnesh Patel (AWS)
Resumen
Este patrón describe cómo migrar una base de datos de Oracle 8i o 9i en las instalaciones a una base de datos de Amazon Relational Database Service (Amazon RDS) para PostgreSQL o para una edición compatible de Amazon Aurora PostgreSQL.
AWS Database Migration Service (AWS DMS) no admite Oracle 8i o 9i como fuente, por lo que este patrón utiliza una instancia de base de datos de Oracle intermedia que es compatible con AWS DMS, 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.
La Herramienta de conversión de esquemas de AWS (AWS SCT) convierte el esquema de la base de datos y AWS DMS migra los datos a la base de datos PostgreSQL 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 (Amazon EC2) con una base de datos Oracle 10g/11g instalada para ayudar a AWS DMS a transmitir los datos. Puede pausar temporalmente la replicación del streaming desde la base de datos de Oracle en las instalaciones a una instancia de Oracle para activar AWS DMS y ponerse al día con la validación de datos o para utilizar otra herramienta de validación de datos. La instancia de base de datos PostgreSQL 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 de AWS activa
Una base de datos de Oracle 8i o 9i de origen en un centro de datos en las instalaciones
AWS Direct Connect, configurado entre el centro de datos en las instalaciones y AWS
Controladores de conectividad de bases de datos Java (JDBC) para conectores SCT de AWS instalados en una máquina local o en la instancia en la EC2 que está instalado AWS SCT
Uso de una base de datos de PostgreSQL como destino para 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
PostgreSQL 10.17 o posterior
Arquitectura
Pila de tecnología de origen
Base de datos de Oracle 8i o 9i
Pila de tecnología de destino
Amazon RDS para PostgreSQL o Aurora PostgreSQL compatibles
Arquitectura de destino

Herramientas
AWS DMS ayuda 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. AWS DMS puede migrar sus datos desde y hasta las bases de datos comerciales y de código abierto más usadas.
AWS SCT ayuda a convertir automáticamente el esquema de la base de datos de origen y la mayor parte 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. AWS SCT también puede analizar el código fuente de su aplicación en busca de instrucciones de SQL incrustadas y convertirlas como parte de un proyecto de conversión de esquemas de bases de datos. Durante este proceso, AWS SCT optimiza el código nativo en la nube al convertir las funciones heredadas de Oracle y SQL Server en sus equivalentes de AWS, para ayudarlo a modernizar sus aplicaciones mientras migra sus bases de datos. Una vez finalizada la conversión del esquema, AWS SCT puede ayudar a migrar datos de una variedad de almacenamiento 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
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Configure la red para la EC2 instancia. | Creación de la nube privada virtual (VPC), subredes, puerta de enlace de Internet, tablas de enrutamiento y grupos de seguridad. | AWS SysAdmin |
Crea la EC2 instancia. | Selecciona Amazon Machine Image (AMI) para la EC2 instancia. Elija el tamaño de la instancia y configura los detalles de la instancia: la cantidad de instancias (1), la VPC y la subred 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 | Administrador de base de datos |
Configure las redes de Oracle. | Modifique o añada entradas en | Administrador de base de datos |
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. | Administrador de base de datos |
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. | Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Configure AWS SCT. | Cree un informe nuevo y, a continuación, conéctese a Oracle como origen y a PostgreSQL como destino. En la Configuración del proyecto, vaya a la pestaña SQL Scripting. Cambie el Script SQL de destino a Varios archivos. (AWS SCT no es compatible con las bases de datos de Oracle 8i/9i, por lo que debe restaurar el volcado exclusivo del esquema en la instancia intermedia de Oracle 10g/11g y usarlo como fuente para AWS SCT). | Administrador de base de datos |
Convertir el esquema de base de datos de Oracle. | En la pestaña Action (Acción), elija Generate Report (Generar informe), Convert Schema (Convertir esquema) y, a continuación, Save as SQL (Guardar como SQL). | Administrador de base de datos |
Modifique los scripts SQL. | Realice las modificaciones en función de las prácticas recomendadas. Por ejemplo, cambie a los tipos de datos adecuados y desarrolle equivalentes de PostgreSQL para funciones específicas de Oracle. | Administrador de base de datos, DevDBA |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Creación de una instancia de base de datos de Amazon RDS | En la consola de Amazon RDS, cree una nueva instancia de base de datos 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 la VPC, el grupo de subredes, 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. | ADMINISTRADOR DE BASES DE DATOS, 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 instancia de Amazon RDS para PostgreSQL de destino, cree el esquema de base de datos mediante los scripts SQL 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 |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Cree una instancia de replicación en AWS DMS. | Complete los campos para el nombre, la clase de instancia, la VPC (igual que para la EC2 instancia), la zona de disponibilidad múltiple y la accesibilidad pública. En la configuración avanzada, especifique el almacenamiento asignado, el grupo de subredes, la zona de disponibilidad, los grupos de seguridad de VPC y la clave de AWS Key Management Service (AWS KMS). | AWS SysAdmin, DBA |
Cree el punto de conexión de origen de la base de datos. | Especifique el nombre, el tipo, el motor de origen (Oracle), el nombre del servidor (el nombre DNS privado de la EC2 instancia), el puerto, el modo SSL, el nombre de usuario, la contraseña, el SID, la VPC (especifique la 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 |
Conecte AWS DMS a Amazon RDS para PostgreSQL. | Cree un grupo de seguridad de migración para las conexiones entre sí VPCs, si su base de datos PostgreSQL está en otra VPC. | AWS SysAdmin, DBA |
Cree puntos de conexión de base de datos de destino. | Especifique el nombre del punto de conexión, el tipo, el motor de origen (PostgreSQL), el nombre del servidor (punto de conexión de Amazon RDS), el puerto, el modo SSL, el nombre de usuario, la contraseña, el nombre de la base de datos, la VPC (especifique la 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 |
Cree una tarea de replicación de AWS DMS. | 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 la configuración de la tarea de replicación de AWS DMS. | 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 modo LOB limitado o completo y habilite las tablas de control. Si lo desea, puede configurar la configuración CommitRateavanzada. | Administrador de base de datos |
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. | Administrador de base de datos |
Iniciar la tarea. | Iniciar la tarea de replicación. Asegúrese de que la carga completa está ejecutando. Ejecute | Administrador de base de datos |
Ejecute los scripts de la migración intermedia desde AWS SCT. | En Amazon RDS para PostgreSQL, ejecute los siguientes scripts: | Administrador de base de datos |
Reanude la tarea para continuar con la captura de datos de cambio (CDC). | Ejecute | Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Consulte los registros y las tablas de validación de AWS DMS. | Compruebe y corrija cualquier error de replicación o validación. | Administrador de base de datos |
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 | Administrador de base de datos |
Ejecute los scripts posteriores a la migración desde AWS SCT. | En Amazon RDS para PostgreSQL, ejecute estos scripts: | Administrador de base de datos |
Complete los pasos adicionales de Amazon RDS para PostgreSQL. | Aumente las secuencias para que coincidan con las de Oracle si es necesario, ejecute | Administrador de base de datos |
Abra las conexiones hacia Amazon RDS para PostgreSQL. | Elimine los grupos de seguridad de AWS DMS de Amazon RDS para PostgreSQL, añada grupos de seguridad de producción y dirija sus aplicaciones a la nueva base de datos. | Administrador de base de datos |
Limpie los objetos de AWS DMS. | Elimine los puntos finales, las tareas de replicación, las instancias de replicación y la EC2 instancia. | SysAdmin, DBA |