Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Table of Contents
Explicación paso a paso de AWS Database Migration Service ................................................................... 1
Migración de bases de datos a Amazon Web Services (AWS) ................................................................... 2
Herramientas de migración de AWS .............................................................................................. 2
Explicaciones detalladas en esta guía ........................................................................................... 3
Migración de una base de datos de Oracle local a Amazon Aurora mediante AWS Database Migration
Service .............................................................................................................................................. 4
Costos ...................................................................................................................................... 5
Esquema general de migración .................................................................................................... 6
Paso 1: Preparar la base de datos de origen de Oracle ............................................................ 6
Paso 2: Lanzar y preparar la base de datos de destino de Aurora .............................................. 6
Paso 3: Lanzar una instancia de replicación .......................................................................... 7
Paso 4: Crear un punto de enlace de origen .......................................................................... 7
Paso 5: Crear un punto de enlace de destino ......................................................................... 7
Paso 6: Crear y ejecutar una tarea de migración ..................................................................... 7
Guía de la migración paso a paso ................................................................................................ 9
Paso 1: Configurar la base de datos de origen de Oracle ......................................................... 9
Paso 2: Configurar la base de datos de destino de Aurora ...................................................... 11
Paso 3: Crear una instancia de replicación ........................................................................... 12
Paso 4: Crear el punto de enlace de origen de Oracle ............................................................ 14
Paso 5: Crear el punto de enlace de destino de Aurora ......................................................... 17
Paso 6: Crear una tarea de migración ................................................................................. 19
Paso 7: Monitorizar la tarea de migración ............................................................................. 25
Solución de problemas ...................................................................................................... 25
Uso de la base de datos de muestra para la migración .................................................................. 26
Migración de una base de datos de Amazon RDS Oracle a Amazon Aurora mediante AWS Database
Migration Service .............................................................................................................................. 27
Costos ..................................................................................................................................... 28
Requisitos previos ..................................................................................................................... 29
Arquitectura de migración ........................................................................................................... 30
Migración paso a paso .............................................................................................................. 31
Paso 1: Iniciar las instancias de RDS en una VPC con la plantilla de CloudFormation ................... 32
Paso 2: Instalar las herramientas de SQL y la herramienta de conversión de esquemas de AWS
en su equipo local ............................................................................................................ 37
Paso 3: Comprobar la conectividad de la instancia de base de datos de Oracle y crear el
esquema de ejemplo ......................................................................................................... 39
Paso 4: Probar la conectividad con la instancia de base de datos de Aurora ............................... 43
Paso 5: Utilizar la herramienta de conversión de esquemas de AWS (AWS SCT) para convertir
los esquemas de Oracle a Aurora ....................................................................................... 45
Paso 6: Validar la conversión de esquemas .......................................................................... 54
Paso 7: Crear una instancia de replicación de AWS DMS ...................................................... 57
Paso 8: Crear los puntos de enlace de origen y destino de AWS DMS ...................................... 58
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS .................................................. 61
Paso 10: Comprobar que la migración de datos se realizó correctamente .................................. 64
Paso 11: Eliminar los recursos de la guía ............................................................................. 66
Pasos siguientes ....................................................................................................................... 67
Plantilla de AWS CloudFormation, scripts SQL y otros recursos ....................................................... 67
Referencias .............................................................................................................................. 68
Migrar una base de datos Amazon RDS for Oracle Database a Amazon Redshift con AWS Database
Migration Service .............................................................................................................................. 69
Requisitos previos ..................................................................................................................... 70
Arquitectura de migración ........................................................................................................... 70
Migración paso a paso .............................................................................................................. 72
Paso 1: Iniciar las instancias de RDS en una VPC con la plantilla de CloudFormation ................... 73
Version 1/1/2016
iii
AWS Database Migration Service
Guía de la migración paso a paso
Version 1/1/2016
iv
AWS Database Migration Service
Guía de la migración paso a paso
También puede utilizar AWS Database Migration Service (AWS DMS) para migrar datos a y desde las
bases de datos de código abierto y comerciales de uso general como, por ejemplo, Oracle, PostgreSQL,
Microsoft SQL Server, Amazon Redshift, Amazon Aurora, MariaDB y MySQL. Este servicio admite
migraciones homogéneas como de Oracle a Oracle, así como migraciones heterogéneas entre diferentes
plataformas de bases de datos, como de Oracle a MySQL o de MySQL a Amazon Aurora. La base de
datos de origen o de destino debe estar en un servicio de AWS.
En esta guía, puede encontrar explicaciones paso a paso que revisan todo el proceso de migración de
datos de muestra a AWS.
Migración de una base de datos de Oracle local a Amazon Aurora mediante AWS Database Migration
Service (p. 4)
Migración de una base de datos de Amazon RDS Oracle a Amazon Aurora mediante AWS Database
Migration Service (p. 27)
Migración de una base de datos compatible con MySQL a Amazon Aurora (p. 109)
Version 1/1/2016
1
AWS Database Migration Service
Guía de la migración paso a paso
Herramientas de migración de AWS
AWS Database Migration Service (AWS DMS) le ayuda a migrar las bases de datos a AWS de manera
segura y eficaz. La base de datos de origen puede permanecer totalmente operativa durante la migración,
minimizando así el tiempo de inactividad de las aplicaciones que dependen de ella. AWS DMS puede
migrar los datos de Oracle a las bases de datos de código abierto y comerciales de uso general de AWS.
AWS DMS migra datos, tablas y claves primarias a la base de datos de destino. Todos los demás
elementos de la base de datos no se migran. Si migra una base de datos de Oracle a Amazon Aurora, por
ejemplo, recomendamos utilizar la herramienta de conversión de esquemas de AWS junto con AWS DMS.
La herramienta de conversión de esquemas (SCT) de AWS simplifica las migraciones de bases de datos
heterogéneas al convertir automáticamente el esquema de la base de datos de origen y la mayor parte del
código personalizado, incluidas las vistas, los procedimientos almacenados y las funciones, a un formato
compatible con la base de datos de destino. El código que no se puede convertir automáticamente está
marcado de forma clara para que pueda convertirse manualmente. Puede utilizar esta herramienta para
convertir sus bases de datos de origen de Oracle en una base de datos de destino de Amazon Aurora,
MySQL o PostgreSQL tanto en Amazon RDS como en EC2.
Es importante comprender que DMS y SCT son dos herramientas distintas que cubren distintas
necesidades y que no interactúan entre sí en el proceso de migración. En cuanto a las prácticas
recomendadas en DMS, a continuación se detalla la metodología de migración para este tutorial:
• AWS DMS adopta un enfoque minimalista y crea solo los objetos necesarios para migrar de forma eficaz
los datos para tablas de ejemplo con clave primaria. Por lo tanto, utilizaremos DMS para cargar las
tablas con datos sin claves externas ni restricciones. (También podemos utilizar la SCT para generar los
scripts de tabla y crearlos en el destino antes de realizar la carga mediante DMS).
• Aprovecharemos SCT:
• Para identificar los problemas, limitaciones y acciones de la conversión de esquemas
• Para generar los scripts de esquema de destino, incluidas las claves externas y las limitaciones
Version 1/1/2016
2
AWS Database Migration Service
Guía de la migración paso a paso
Explicaciones detalladas en esta guía
• Para convertir código, como procedimientos y vistas, del origen al destino y aplicarlo al destino
El tamaño y el tipo de migración de la base de datos de Oracle que desee realizar determinan en gran
medida las herramientas a utilizar. Por ejemplo, una migración heterogénea, en la que se migra desde una
base de datos de Oracle a otro motor de base de datos en AWS, se realiza mejor mediante AWS DMS.
Mientras que una migración homogénea, en la que se migra de una base de datos de Oracle a una base
de datos de Oracle en AWS, se realiza mejor con las herramientas nativas de Oracle.
Migración de una base de datos de Amazon RDS Oracle a Amazon Aurora mediante AWS Database
Migration Service (p. 27)
Migración de una base de datos compatible con MySQL a Amazon Aurora (p. 109)
Version 1/1/2016
3
AWS Database Migration Service
Guía de la migración paso a paso
A continuación, encontrará un esquema general y una explicación completa paso a paso que muestra el
proceso de migración de una base de datos de Oracle local (el punto de enlace de origen) a una base de
datos de Amazon Aurora (el punto de enlace de destino) utilizando AWS Database Migration Service (AWS
DMS) y la herramienta de conversión de esquemas de AWS (AWS SCT).
AWS DMS migra los datos de la base de datos de origen de Oracle a la base de datos de destino de
Aurora. AWS DMS también captura los cambios en el lenguaje de manipulación de datos (DML) y el
lenguaje de definición de datos (DDL) que se efectúen en la base de datos de origen y aplica dichos
cambios a la base de datos de destino. De esta forma, AWS DMS ayuda a mantener las bases de datos
de origen y de destino sincronizadas entre sí. Para facilitar la migración de datos, DMS crea las tablas y los
índices de clave primaria en la base de datos de destino, en caso de que sea necesario.
Sin embargo, AWS DMS no migra los índices secundarios, secuencias, valores predeterminados,
procedimientos almacenados, disparadores, sinónimos, vistas y otros objetos de esquema no relacionados
específicamente con la migración de datos. Para migrar estos objetos a la base de datos de destino de
Aurora, utilice la herramienta de conversión de esquemas de AWS.
Se recomienda encarecidamente que siga utilizando la base de datos de muestra de Amazon. Para ver un
tutorial en el que se utilice la base de datos de muestra e instrucciones sobre cómo obtener una copia de la
base de datos de muestra, consulte Uso de la base de datos de muestra para la migración (p. 26).
Si ha utilizado AWS DMS antes o prefiere hacer clic con el ratón para leer, le recomendamos el esquema
general. Si necesita información detallada y desea un enfoque más prudente (o si tiene preguntas), le
recomendamos la guía paso a paso.
Version 1/1/2016
4
AWS Database Migration Service
Guía de la migración paso a paso
Costos
Hora:
Costo:
Restricciones:
Versión de Oracle: 10g (10.2 y posterior), 11g, 12c, (en Amazon Relational Database Service (Amazon
RDS), 11g o superior.
Versión de MySQL o de la base de datos relacionada: 5.5, 5.6, 5.7, MariaDB, Amazon Aurora
Costos
Puesto que AWS DMS todavía no se ha incorporado a la calculadora, consulte la siguiente tabla para
obtener una estimación de precios.
Además de la configuración en su propio PC, debe crear varios componentes de AWS para completar el
proceso de migración. Estos componentes de AWS son:
Instancia de base de datos Aurora de Amazon RDS db.r3.large Una única zona
de disponibilidad,
10 GB de
almacenamiento, 1
millón de E/S
Suponiendo que ejecuta este tutorial durante 2 horas, la estimación del precio sería la siguiente:
Version 1/1/2016
5
AWS Database Migration Service
Guía de la migración paso a paso
Esquema general de migración
• Cuenta de AWS DMS: se recomienda crear una cuenta independiente específicamente para migrar los
datos. Esta cuenta debe disponer del conjunto de privilegios mínimos necesarios para migrar los datos.
A continuación se especifican detalles relacionados con dichos privilegios. Si solo le interesa probar
AWS DMS en una base de datos que no sea de producción, cualquier cuenta de DBA será suficiente.
• Registro suplementario: para capturar los cambios, debe activar el registro suplementario para poder
utilizar DMS. Para activar el registro suplementario en el nivel de base de datos, ejecute el siguiente
comando.
Además, AWS DMS requiere que por cada tabla que se migre defina al menos el registro suplementario
en el nivel de la clave. AWS DMS añade automáticamente este registro suplementario para usted si
incluye los siguientes parámetros de conexión adicionales para su conexión de origen.
addSupplementalLogging=Y
• Base de datos de origen: para migrar sus datos, el servidor de replicación AWS DMS necesita acceder a
la base de datos de origen. Asegúrese de que sus reglas de cortafuegos permitan acceder al servidor de
la replicación de AWS DMS.
• Para obtener los mejores resultados, le recomendamos que localice su instancia de Aurora y su
instancia de replicación en la misma VPC y, si es posible, en la misma zona de disponibilidad.
• Le recomendamos que cree una cuenta independiente con los privilegios mínimos suficientes para
migrar los datos. La cuenta de AWS DMS necesita los siguientes privilegios en todas las bases de datos
a las que se migran datos.
Además, AWS DMS necesita acceso total a la base de datos awsdms_control. Esta base de datos
contiene información requerida por AWS DMS y que es específica de la migración. Para otorgar acceso,
ejecute el siguiente comando.
Version 1/1/2016
6
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Lanzar una instancia de replicación
• Para obtener mejores resultados, le recomendamos que ubique su instancia de replicación en la misma
VPC y zona de disponibilidad que su base de datos de destino, en este caso Aurora.
• Si su base de datos de origen o de destino se encuentra fuera de la VPC en la que lanza su servidor de
replicación, el servidor de replicación deberá tener acceso público.
• AWS DMS puede consumir bastante memoria y CPU. Sin embargo, se puede escalar fácilmente si es
necesario. Si prevé ejecutar varias tareas en un único servidor de replicación o
• El almacenamiento predeterminado suele ser suficiente para la mayoría de migraciones.
• El punto de enlace de origen debe ser accesible desde el servidor de replicación. Para permitirlo, es
posible que necesite modificar las reglas del cortafuegos para incluir al servidor de replicación en la lista
blanca. Puede encontrar la dirección IP de su servidor de replicación en la consola de administración de
AWS DMS.
• Para que AWS DMS capture los cambios, Oracle requiere que el registro suplementario esté activado.
Si desea que AWS DMS active el registro suplementario por usted, añada lo siguiente a los atributos de
conexión adicionales de su punto de enlace de origen de Oracle.
addSupplementalLogging=Y
• Su punto de enlace de destino debe ser accesible desde el servidor de replicación. Es posible que tenga
que modificar los grupos de seguridad para poder acceder al punto de enlace de destino.
• Si creó la base de datos previamente en el destino, recomendamos desactivar las comprobaciones de
claves externas durante toda la carga. Para hacerlo, añada lo siguiente a sus atributos adicionales de
conexión.
initstmt=SET FOREIGN_KEY_CHECKS=0
Version 1/1/2016
7
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear y ejecutar una tarea de migración
Puntos de conexión y servidor de replicación: seleccione los puntos de enlace y el servidor de replicación
creados anteriormente.
Tipo de migración: en la mayoría de los casos debe elegir migrate existing data and replication ongoing
changes. Con esta opción, AWS DMS carga los datos de origen al mismo tiempo que captura los cambios
en dichos datos. Cuando los datos están totalmente cargados, AWS DMS aplica los cambios restantes y
mantiene las bases de datos de origen y de destino sincronizadas hasta que se detiene la tarea.
Target table preparation mode : si AWS DMS crea las tablas, choose drop tables on target. Si utiliza
algún otro método para crear las tablas de destino como, por ejemplo, la herramienta de conversión de
esquemas de AWS, seleccione truncate.
LOB parameters : si simplemente está probando AWS DMS, seleccione include LOB columns in
replication, Limited LOB mode y defina el max LOB size to 16 (que es 16k). Para obtener más información
sobre LOB, lea la información detallada en la guía paso a paso.
Enable logging : para obtener ayuda con la depuración de los problemas de migración, mantenga el
registro activado siempre.
Table mappings : al migrar de Oracle a Aurora, le recomendamos que convierta los nombres de esquemas,
tablas y columnas a minúsculas. Para hacerlo, cree un mapeo de tablas personalizado. El siguiente
ejemplo migra el esquema DMS_SAMPLE y convierte los nombres de esquemas, tablas y columnas a
minúsculas.
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "DMS_SAMPLE",
"table-name": "%"
},
"rule-action": "include"
},
{
"rule-type": "transformation",
"rule-id": "6",
"rule-name": "6",
"rule-action": "convert-lowercase",
"rule-target": "schema",
"object-locator": {
"schema-name": "%"
}
},
{
"rule-type": "transformation",
"rule-id": "7",
"rule-name": "7",
"rule-action": "convert-lowercase",
"rule-target": "table",
"object-locator": {
"schema-name": "%",
"table-name": "%"
}
},
{
"rule-type": "transformation",
"rule-id": "8",
"rule-name": "8",
"rule-action": "convert-lowercase",
"rule-target": "column",
"object-locator": {
Version 1/1/2016
8
AWS Database Migration Service
Guía de la migración paso a paso
Guía de la migración paso a paso
"schema-name": "%",
"table-name": "%",
"column-name": "%"
}
}
]
}
Temas
• Paso 1: Configurar la base de datos de origen de Oracle (p. 9)
• Paso 2: Configurar la base de datos de destino de Aurora (p. 11)
• Paso 3: Crear una instancia de replicación (p. 12)
• Paso 4: Crear el punto de enlace de origen de Oracle (p. 14)
• Paso 5: Crear el punto de enlace de destino de Aurora (p. 17)
• Paso 6: Crear una tarea de migración (p. 19)
• Paso 7: Monitorizar la tarea de migración (p. 25)
• Solución de problemas (p. 25)
Para que AWS DMS lea esta información, asegúrese de que los registros de archivo se conservan en
el servidor de la base de datos mientras AWS DMS los necesite. Si configura su tarea para empezar a
capturar los cambios de forma inmediata, solo deberá conservar los registros de archivo un poco más de la
duración de las transacciones cuya ejecución sea más larga. Normalmente basta con retener los registros
de archivo durante 24 horas. Si configura su tarea para empezar desde un momento dado en el pasado,
los registros de archivo deben estar disponibles desde ese momento. Para obtener más instrucciones
específicas para activar ARCHIVELOG MODE y garantizar la retención de los registros para la base de
datos de Oracle local, consulte la documentación de Oracle.
Para capturar los cambios en los datos, AWS DMS precisa que el registro suplementario esté activado en
la base de datos de origen para AWS DMS. Debe activar el registro suplementario mínimo en el nivel de
base de datos. AWS DMS también requiere que el registro de claves de identificación esté activado. Esta
opción hace que la base de datos coloque todas las columnas de la clave primaria de una fila en el archivo
de registro redo cada vez que se actualiza una fila que contiene una clave primaria (aunque no se haya
modificado ningún valor en la clave primaria). Puede configurar esta opción en el nivel de la base de datos
o de la tabla.
Si el origen de Oracle está en Amazon RDS, la base de datos tendrá el modo ARCHIVELOG MODE si, y
solo si, activa las copias de seguridad. El siguiente comando se asegurará de que se retengan los registros
de archivo en el RDS de origen durante 24 horas:
Version 1/1/2016
9
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Configurar la base de datos de origen de Oracle
1. Ejecute el siguiente comando para activar el registro suplementario en el nivel de base de datos que
requiere AWS DMS:
For RDS:
exec rdsadmin.rdsadmin_util.alter_supplemental_logging('ADD');
For RDS:
exec rdsadmin.rdsadmin_util.alter_supplemental_logging('ADD','PRIMARY KEY');
3. La base de datos de origen incurre en pequeños gastos adicionales si el registro suplementario del
nivel de la clave está activado. Por lo tanto, si migra únicamente un subconjunto de tablas, es posible
que le interese activar el registro suplementario del nivel de la clave en el nivel de la tabla. Para activar
el registro suplementario del nivel de la clave en el nivel de la tabla, utilice el siguiente comando.
alter table table_name add supplemental log data (PRIMARY KEY) columns;
• Puede agregar el registro suplementario a todas las columnas implicadas en el primer índice único
de la tabla (ordenadas por nombre de índice).
• Puede agregar el registro suplementario a todas las columnas de la tabla.
Para añadir el registro suplementario a un subconjunto de columnas en una tabla, es decir, las
columnas implicadas en un índice único, ejecute el siguiente comando.
Para añadir el registro suplementario a todas las columnas de una tabla, ejecute el siguiente comando.
4. Cree o configure una cuenta de base de datos para que la use AWS DMS. Le recomendamos que
utilice una cuenta con los privilegios mínimos exigidos por AWS DMS para la conexión a AWS DMS.
AWS DMS requiere los siguientes privilegios.
CREATE SESSION
Version 1/1/2016
10
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Configurar la base de datos de destino de Aurora
Si desea capturar y aplicar cambios (CDC), también necesitará los siguientes privilegios.
EXECUTE on DBMS_LOGMNR
SELECT on V_$LOGMNR_LOGS
SELECT on V_$LOGMNR_CONTENTS
LOGMINING /* For Oracle 12c and higher. */
* ALTER for any table being replicated (if you want DMS to add supplemental logging)
Para versiones de Oracle previas a 11.2.0.3, necesitará los siguientes privilegios. Si las vistas están
expuestas, necesitará los siguientes privilegios.
Version 1/1/2016
11
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Crear una instancia de replicación
AWS DMS utiliza algunas tablas de control en la base de datos awsdms_control de destino. El siguiente
comando garantiza que su dms_user tenga el acceso necesario a la base de datos awsdms_control:
1. Inicie sesión en la consola de administración de AWS, abra la consola de AWS DMS en https://
console.aws.amazon.com/dms/ y seleccione Replication instances. Si está registrado como usuario de
AWS Identity and Access Management (IAM), debe disponer de los permisos adecuados para acceder
a AWS DMS. Para obtener más información sobre los permisos necesarios, consulte la sección sobre
permisos de IAM necesarios para utilizar AWS DMS.
2. Elija Create replication instance.
3. En la página Create replication instance, especifique la información de la instancia de replicación de la
siguiente manera.
Version 1/1/2016
12
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Crear una instancia de replicación
Version 1/1/2016
13
AWS Database Migration Service
Guía de la migración paso a paso
Paso 4: Crear el punto de enlace de origen de Oracle
VPC Security group(s) Los grupos de seguridad permiten controlar las entradas
y salidas de su VPC. Con AWS DMS puede asociar uno o
varios grupos de seguridad con la VPC desde los que se
lanza el servidor de replicación.
KMS master key Con AWS DMS, todos los datos se cifran en reposo
mediante una clave de cifrado de KMS. De forma
predeterminada, AWS DMS crea una nueva clave de
cifrado para su servidor de replicación. Sin embargo,
puede utilizar una clave existente si lo desea.
Para especificar los puntos de enlace de la base de datos de origen o de destino a con la consola
de AWS
Version 1/1/2016
14
AWS Database Migration Service
Guía de la migración paso a paso
Paso 4: Crear el punto de enlace de origen de Oracle
Version 1/1/2016
15
AWS Database Migration Service
Guía de la migración paso a paso
Paso 4: Crear el punto de enlace de origen de Oracle
4. Seleccione la pestaña Advanced para fijar valores para cadenas de conexión adicionales y para la
clave de cifrado.
Extra connection attributes Aquí puede añadir valores para los atributos adicionales
que controlan el comportamiento de su punto de enlace.
A continuación se enumeran algunos de los atributos
más relevantes. Para ver la lista completa, consulte la
documentación. Separe varias entradas entre sí con un
punto y coma (;).
KMS master key Elija la clave de cifrado que se utilizará para cifrar el
almacenamiento de la replicación y la información de la
conexión. Si elije (Default) aws/dms, se utilizará la clave
AWS KMS predeterminada asociada con su cuenta y
región.
Version 1/1/2016
16
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Crear el punto de enlace de destino de Aurora
Antes de guardar su punto de enlace, puede probarlo. Para hacerlo, seleccione una VPC y la instancia
de replicación desde la que realizar las pruebas. Como parte de la prueba, AWS DMS refresca la lista de
esquemas asociados con el punto de enlace. (Los esquemas se presentan como opciones de origen al
crear una tarea con este punto de enlace de origen).
3. Especifique la información de conexión para la base de datos de destino de Aurora. La tabla siguiente
describe la configuración del destino.
Version 1/1/2016
17
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Crear el punto de enlace de destino de Aurora
4. Seleccione la pestaña Advanced para fijar valores para cadenas de conexión adicionales y la clave de
cifrado, en caso de que las necesite.
Extra connection attributes Aquí puede introducir valores para los atributos
adicionales que controlan el comportamiento del
punto de enlace. A continuación se enumeran
algunos de los atributos más relevantes. Para
ver la lista completa, consulte la documentación.
Separe varias entradas entre sí con un punto y
coma (;).
initstmt=SET FOREIGN_KEY_CHECKS=0
Version 1/1/2016
18
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear una tarea de migración
Antes de guardar el punto de enlace, tiene la oportunidad de probarlo. Para hacerlo, seleccione una VPC y
una instancia de replicación desde las que realizar la prueba.
Con una tarea de AWS DMS, puede especificar qué esquema se va a migrar y el tipo de migración. Puede
migrar los datos existentes, migrar los datos existentes y replicar los cambios en curso o bien solo replicar
los cambios. En esta guía solo se migran los datos existentes.
Migration type Puede utilizar tres tipos de migración distintos con AWS
DMS.
Version 1/1/2016
19
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear una tarea de migración
Target table preparation mode AWS DMS le permite especificar cómo le gustaría que se
preparen las tablas de destino antes de la carga.
Version 1/1/2016
20
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear una tarea de migración
Version 1/1/2016
21
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear una tarea de migración
Include LOB columns in replication A veces, migrar objetos grandes (LOB) entre sistemas
resulta complicado. AWS DMS ofrece una serie de
opciones para ayudar a ajustar las columnas LOB. Para
saber qué y cuándo AWS DMS considera los tipos de
datos como LOB, consulte la documentación de AWS
DMS,.
Full LOB mode: en full LOB mode, AWS DMS migra todos
los LOB del origen al destino sin importar el tamaño. En
esta configuración, AWS DMS no tiene información sobre
el tamaño máximo de los LOB. Por lo tanto, los LOB se
migran de uno en uno. El modo LOB completo puede ser
bastante lento.
Max LOB size (K) Cuando se configura una tarea para que se ejecute en
limited LOB mode, esta opción determina el tamaño
máximo del LOB que aceptará AWS DMS. Cualquier LOB
que sea superior a este valor se truncará en este valor.
LOB chunk size (K) Cuando se configura una tarea para utilizar full LOB mode,
AWS DMS recupera los LOB en partes. Esta opción
determina el tamaño de cada fragmento. Al configurar esta
opción, tenga en cuenta el tamaño máximo del paquete
de su configuración de red. Si el tamaño del fragmento
LOB supera el tamaño máximo permitido del paquete, es
posible que vea errores de desconexión.
Version 1/1/2016
22
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear una tarea de migración
Custom CDC start time Este parámetro pertenece a las tareas configuradas para
replicar únicamente los cambios de datos. Le indica a
AWS DMS dónde empezar a buscar cambios en el flujo de
cambios.
Create control table(s) in target AWS DMS requiere algunas tablas de control en la base
schema de datos de destino. De forma predeterminada, estas
tablas se crean en la misma base de datos que sus
datos. Este parámetro le permite indicar a AWS DMS que
coloque dichos elementos en otro lugar.
Maximum number of tables to load in AWS DMS realiza una carga de tabla tras tabla con sus
parallel datos. Este parámetro le permite controlar cuántas tablas
cargará AWS DMS en paralelo. El valor predeterminado es
8, que es óptimo en la mayoría de casos.
Los mapeos de tablas le indican a AWS DMS qué tablas debe migrar una tarea desde el origen al
destino. Los mapeos se expresan en JSON, aunque algunos ajustes pueden hacerse mediante la
consola de administración de AWS. Los mapeos de tablas también pueden incluir transformaciones
como, por ejemplo, el cambio de nombres de tabla de mayúsculas a minúsculas.
AWS DMS genera mapeos de tablas predeterminadas para cada esquema (no del sistema) en
la base de datos de origen. En la mayoría de los casos deberá personalizar su mapeo de tablas.
Para personalizar su mapeo de tablas, seleccione el botón de opción personalizado. Para obtener
más información sobre cómo crear mapeos de tablas, consulte la documentación de AWS DMS. El
siguiente mapeo de tablas realiza estas cosas:
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "DMS_SAMPLE",
"table-name": "%"
},
"rule-action": "include"
},
{
"rule-type": "selection",
"rule-id": "2",
Version 1/1/2016
23
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Crear una tarea de migración
"rule-name": "2",
"object-locator": {
"schema-name": "DMS_SAMPLE",
"table-name": "MLB_DATA"
},
"rule-action": "exclude"
},
{
"rule-type": "selection",
"rule-id": "3",
"rule-name": "3",
"object-locator": {
"schema-name": "DMS_SAMPLE",
"table-name": "NAME_DATA"
},
"rule-action": "exclude"
},
{
"rule-type": "selection",
"rule-id": "4",
"rule-name": "4",
"object-locator": {
"schema-name": "DMS_SAMPLE",
"table-name": "NFL_DATA"
},
"rule-action": "exclude"
},
{
"rule-type": "selection",
"rule-id": "5",
"rule-name": "5",
"object-locator": {
"schema-name": "DMS_SAMPLE",
"table-name": "NFL_STADIUM_DATA"
},
"rule-action": "exclude"
},{
"rule-type": "transformation",
"rule-id": "6",
"rule-name": "6",
"rule-action": "convert-lowercase",
"rule-target": "schema",
"object-locator": {
"schema-name": "%"
}
},
{
"rule-type": "transformation",
"rule-id": "7",
"rule-name": "7",
"rule-action": "convert-lowercase",
"rule-target": "table",
"object-locator": {
"schema-name": "%",
"table-name": "%"
}
},
{
"rule-type": "transformation",
"rule-id": "8",
"rule-name": "8",
"rule-action": "convert-lowercase",
"rule-target": "column",
"object-locator": {
Version 1/1/2016
24
AWS Database Migration Service
Guía de la migración paso a paso
Paso 7: Monitorizar la tarea de migración
"schema-name": "%",
"table-name": "%",
"column-name": "%"
}
}
]
}
Solución de problemas
Las dos áreas donde la gente suele encontrar problemas al trabajar con Oracle como origen y Aurora
como destino son: el registro suplementario y la distinción entre mayúsculas y minúsculas.
• Registro suplementario: con Oracle, para que la replicación cambie los datos, el registro suplementario
debe estar activado. Sin embargo, si activa el registro suplementario en el nivel de la base de datos, a
veces hay que volver a activarlo al crear tablas nuevas. La mejor solución consiste en permitir que DMS
active el registro suplementario para usted utilizando el atributo de conexión adicional:
addSupplementalLogging=Y
• Distinción entre mayúsculas y minúsculas: Oracle no distingue entre mayúsculas y minúsculas (a menos
que utilice comillas en los nombres de objeto). Sin embargo, el texto aparece en mayúsculas. Por lo
tanto, AWS DMS denomina los objetos de destino en mayúsculas de forma predeterminada. En la
mayoría de casos, le convendría utilizar transformaciones para cambiar los nombres de esquemas,
tablas y columnas a minúsculas.
Para obtener más consejos, consulte la sección de resolución de problemas de AWS DMS en la Guía del
usuario de AWS.
http://docs.aws.amazon.com/dms/latest/userguide/
CHAP_Troubleshooting.html#CHAP_Troubleshooting.Oracle
Version 1/1/2016
25
AWS Database Migration Service
Guía de la migración paso a paso
Uso de la base de datos de muestra para la migración
http://docs.aws.amazon.com/dms/latest/userguide/
CHAP_Troubleshooting.html#CHAP_Troubleshooting.MySQL
Para crear la base de datos de muestra, extraiga el archivo .tar y siga las instrucciones de los archivos
README y de instalación.
SQL>exec ticketManagement.generateTicketActivity(0.01,1000);
En cuanto haya "vendido" algunas entradas, podrá transferirlas con el siguiente comando:
SQL>exec ticketManagement.generateTransferActivity(1,100);
Version 1/1/2016
26
AWS Database Migration Service
Guía de la migración paso a paso
En esta guía se explica la migración de bases de datos heterogéneas desde Amazon RDS Oracle a
Amazon Aurora mediante AWS Database Migration Service y la herramienta de conversión de esquemas
de AWS. Se trata de un ejercicio de introducción que no cubre todos los escenarios, pero le proporcionará
una buena explicación de los pasos que se realizan al ejecutar una migración.
Es importante saber que AWS DMS y AWS SCT son dos herramientas diferentes y atienden a diferentes
necesidades. No interactúan entre sí en el proceso de migración. A grandes rasgos, los pasos de esta
migración son los siguientes:
Esta guía utiliza una plantilla de AWS CloudFormation personalizada para crear una instancia de base
de datos de Oracle en Amazon RDS y Amazon Aurora. Después utiliza un script de comandos SQL para
Version 1/1/2016
27
AWS Database Migration Service
Guía de la migración paso a paso
Costos
instalar un esquema de ejemplo y datos en la instancia de base de datos de Oracle en Amazon RDS que
se migrará a Amazon Aurora más adelante.
Para completar esta guía se necesitan dos horas aproximadamente. El costo estimado para completarla
con los recursos de AWS es de alrededor de 5,00 USD. Asegúrese de seguir las instrucciones para
eliminar los recursos al final de esta guía y evitar así cargos adicionales.
Temas
• Costos (p. 28)
• Requisitos previos (p. 29)
• Arquitectura de migración (p. 30)
• Migración paso a paso (p. 31)
• Pasos siguientes (p. 67)
• Plantilla de AWS CloudFormation, scripts SQL y otros recursos (p. 67)
• Referencias (p. 68)
Costos
Para esta guía, los recursos de Amazon Relational Database Service (Amazon RDS) se aprovisionan
mediante AWS CloudFormation, así como los recursos de AWS Database Migration Service (AWS DMS).
Al aprovisionarlos se generan cargos por hora en su cuenta de AWS. La herramienta de conversión de
esquemas de AWS no incurre en costos, ya que se ofrece como parte de AWS DMS.
Aunque solo necesitará una cantidad mínima de recursos para esta guía, algunos de estos recursos no se
incluyen en la capa gratuita de AWS. Al final de esta guía encontrará una sección donde se explica cómo
eliminar los recursos para evitar cargos adicionales. Elimine los recursos en cuanto haya completado el
tutorial.
Para estimar el costo de ejecutar esta guía en AWS, puede utilizar la calculadora costo mensual AWS.
Sin embargo, el servicio AWS DMS todavía no está incorporado en la calculadora. En la siguiente tabla se
desglosan los precios de AWS DMS y de Amazon RDS Oracle Standard Edition Two.
Instancia de base de datos de Amazon RDS Oracle, licencia db.m3.medium Single AZ,
incluida (Standard Edition Two), Single AZ 10 GB de
almacenamiento,
GP2
Instancia de base de datos Aurora de Amazon RDS db.r3.large Una única zona
de disponibilidad,
10 GB de
almacenamiento, 1
millón de E/S
Version 1/1/2016
28
AWS Database Migration Service
Guía de la migración paso a paso
Requisitos previos
Suponiendo que ejecute esta guía durante dos horas, el precio que calculamos para el uso de los recursos
de AWS es el siguiente:
• El precio estimado del uso de Amazon Aurora+10 GB de almacenamiento calculado con la calculadora
costo mensual AWS es de 1,78 USD.
• Costo estimado de Amazon RDS Oracle SE2 (licencia incluida) + 10 GB GP2 de almacenamiento según
el sitio de precios a (0,226 USD) * 2 horas + (0,115 USD) * 10 GB es de 1,602 USD.
• Costo estimado del servicio AWS DMS de la instancia t2.small con 50 GB GP2 de almacenamiento
según el sitio de precios a (0,036 USD) * 2 horas es de 0,072 USD.
Costo total estimado de la ejecución de este proyecto = 1,78 USD +1,602 + 0,072 USD = 3,454 USD,
aproximadamente 5,00 USD.
Requisitos previos
Los siguientes requisitos previos también son necesarios para completar esta guía:
Version 1/1/2016
29
AWS Database Migration Service
Guía de la migración paso a paso
Arquitectura de migración
• Una cuenta de AWS con credenciales de AWS Identity and Access Management (IAM) que le permitan
lanzar las instancias Amazon Relational Database Service (Amazon RDS) y AWS Database Migration
Service (AWS DMS) en su región de AWS. Para obtener información sobre las credenciales de IAM,
consulte la información sobre cómo crear un usuario de IAM.
• Conocimientos básicos del servicio Amazon Virtual Private Cloud (Amazon VPC) y de los grupos de
seguridad. Para obtener información sobre cómo utilizar Amazon VPC con Amazon RDS, consulte
la información sobre Virtual Private Cloud (VPC) y Amazon RDS. Para obtener información sobre los
grupos de seguridad de Amazon RDS, consulte la información sobre grupos de seguridad de Amazon
RDS.
• Conocimiento de las características compatibles y las limitaciones de AWS DMS. Para obtener
información sobre AWS DMS, consulte la sección que explica qué es AWS Database Migration Service.
• Conocimientos sobre las opciones de conversión del tipo de datos admitidas para Oracle y Amazon
Aurora. Para obtener información sobre los tipos de datos para Oracle como origen, consulte la sección
sobre uso de una base de datos de Oracle como origen para AWS Database Migration Service . Para
obtener información sobre los tipos de datos para Amazon Aurora como destino, consulte la sección
sobre uso de una base de datos compatible con MySQL como destino para AWS Database Migration
Service .
Para obtener más información sobre AWS DMS, consulte la documentación de AWS DMS.
Arquitectura de migración
Esta guía utiliza AWS CloudFormation para crear una topología de red sencilla para la migración de bases
de datos que incluya la base de datos de origen, la instancia de replicación y la base de datos de destino
en la misma VPC. Para obtener más información sobre AWS CloudFormation, consulte la documentación
de CloudFormation.
Aprovisionamos los recursos de AWS que se necesitan para esta guía de AWS Database Migration
Service (AWS DMS) a través de AWS CloudFormation. Estos recursos incluyen una VPC e instancias
Amazon Relational Database Service (Amazon RDS) para Oracle y Amazon Aurora. Aprovisionamos
a través de AWS CloudFormation porque simplifica el proceso, por lo que podemos concentrarnos en
tareas relacionadas con la migración de datos. Cuando crea una pila a partir de una plantilla de AWS
CloudFormation, esta aprovisiona los siguientes recursos:
• Una VPC con CIDR (10.0.0.0/24) con dos subredes públicas en su región, DBSubnet1 en la dirección
10.0.0.0/26 en la zona de disponibilidad (AZ) 1 y DBSubnet2 en la dirección 10.0.0.64/26, en AZ 12.
• Un grupo de subred de base de datos que incluye DBSubnet1 y DBSubnet2.
• Oracle RDS Standard Edition Two con estas opciones de implementación:
• Licencia incluida
• Configuración de Single-AZ
• db.m3.medium o clase de instancia equivalente
• Puerto 1521
• Opción y grupos de parámetros predeterminados
• Instancia Aurora RDS con estas opciones de implementación:
• Sin réplicas
• Clase de instancia db.r3.large o equivalente
• Puerto 3306
• Opción y grupos de parámetros predeterminados
• Un grupo de seguridad con acceso desde un equipo o 0.0.0.0/0 (acceso desde cualquier lugar) en
función del parámetro de entrada
Version 1/1/2016
30
AWS Database Migration Service
Guía de la migración paso a paso
Migración paso a paso
Hemos diseñado la plantilla CloudFormation para que el usuario no tenga que intervenir demasiado.
Aprovisiona los recursos necesarios de AWS con las configuraciones mínimas recomendadas. Sin
embargo, si desea cambiar algunas de las configuraciones y parámetros, como el bloque de VPC CIDR y
los tipos de instancia de Amazon RDS, no dude en actualizar la plantilla.
Utilizaremos la consola de administración de AWS para aprovisionar los recursos de AWS DMS, como la
instancia de replicación, los puntos de enlace y las tareas. Deberá instalar herramientas de cliente, como
SQL Workbench/J y la herramienta de conversión de esquemas de AWS (AWS SCT), en su equipo local
para conectarse a las instancias de Amazon RDS.
Temas
• Paso 1: Iniciar las instancias de RDS en una VPC con la plantilla de CloudFormation (p. 32)
• Paso 2: Instalar las herramientas de SQL y la herramienta de conversión de esquemas de AWS en su
equipo local (p. 37)
• Paso 3: Comprobar la conectividad de la instancia de base de datos de Oracle y crear el esquema de
ejemplo (p. 39)
• Paso 4: Probar la conectividad con la instancia de base de datos de Aurora (p. 43)
• Paso 5: Utilizar la herramienta de conversión de esquemas de AWS (AWS SCT) para convertir los
esquemas de Oracle a Aurora (p. 45)
• Paso 6: Validar la conversión de esquemas (p. 54)
Version 1/1/2016
31
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
• Paso 7: Crear una instancia de replicación de AWS DMS (p. 57)
• Paso 8: Crear los puntos de enlace de origen y destino de AWS DMS (p. 58)
• Paso 9: Crear y ejecutar la tarea de migración de AWS DMS (p. 61)
• Paso 10: Comprobar que la migración de datos se realizó correctamente (p. 64)
• Paso 11: Eliminar los recursos de la guía (p. 66)
Para utilizar AWS CloudFormation con el fin de crear recursos de Amazon RDS para esta guía
https://dms-sbs.s3.amazonaws.com/Oracle_Aurora_RDS_For_DMSDemo.template.
4. Elija Next. En la página Specify Details, proporcione los valores de los parámetros según se muestra a
continuación.
Version 1/1/2016
32
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
Version 1/1/2016
33
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
Version 1/1/2016
34
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
7. AWS puede tardar aproximadamente 20 minutos o más en crear la pila con instancias Amazon RDS
Oracle y Amazon Aurora.
Version 1/1/2016
35
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
8. Una vez creada la pila, seleccione Stack, la pila DMSdemo y, a continuación, la vista Outputs. Registre
las cadenas de conexión de JDBC, OracleJDBCConnectionString y AuroraJDBCConnectionString,
para un uso posterior en esta guía con el fin de conectarse a las instancias de bases de datos de
Oracle y Aurora.
Version 1/1/2016
36
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Instalar las herramientas de SQL y la herramienta
de conversión de esquemas de AWS en su equipo local
Note
Oracle 12c SE Two License versión 12.1.0.2.v4 está disponible en todas las regiones. Sin
embargo, Amazon Aurora no está disponible en todas las regiones. Amazon Aurora está
disponible actualmente en las regiones de EE.UU. Este (Norte de Virginia), EE.UU. Oeste
(Oregón), UE (Irlanda), Asia Pacífico (Tokio), Asia Pacífico (Mumbai), Asia Pacífico (Sídney) y
Asia Pacífico (Seúl). Si intenta crear una pila en una región en la que Aurora no está disponible, la
creación fallará y emitirá el error Invalid DB Engine for AuroraCluster.
En esta guía, suponemos que va a utilizar el cliente SQL Workbench/J para conectarse a instancias RDS
para validar la migración. Le recomendamos que se plantee el uso de otras herramientas de software
como las siguientes:
• JACK DB, una interfaz web online para utilizar con bases de datos de RDS (Oracle y Aurora) a través de
JDBC
• DBVisualizer
• Oracle SQL Developer
Version 1/1/2016
37
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Instalar las herramientas de SQL y la herramienta
de conversión de esquemas de AWS en su equipo local
Para instalar el software de cliente SQL
1. Descargue SQL Workbench/J desde el sitio web de SQL Workbench/J e instálelo en su equipo local.
Este cliente SQL es gratuito y de código abierto, además es independiente del sistema de gestión de
bases de datos.
2. Descargue el controlador JDBC de Oracle Database 12.1.0.2 (ojdbc7.jar).
3. Descargue el controlador MySQL ( mysql-connector-java-5.1.39-bin.jar).
4. Al utilizar SQL Workbench/J, configure los controladores JDBC para Oracle y Aurora para poder
establecer la conectividad, tal como se describe a continuación.
Version 1/1/2016
38
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
A continuación, instale la herramienta de migración de esquemas de AWS y los controladores JDBC
necesarios.
Para probar la conexión a la instancia de base de datos de Oracle con SQL Workbench/J y crear
el esquema de ejemplo
1. En SQL Workbench/J, seleccione File y, después, Connect window. Cree un nuevo perfil de conexión
con la siguiente información, tal y como se muestra a continuación
Version 1/1/2016
39
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
2. Para probar la conexión, seleccione Test. Seleccione OK para cerrar el cuadro de diálogo y luego OK
para crear el perfil de conexión.
Note
Version 1/1/2016
40
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
3. Seleccione SQL y, después, Execute All.
Cuando ejecute el script, recibirá un mensaje de error en el que se indica que el usuario HR no
existe. Puede ignorar este error y ejecutar el script. El script borra el usuario antes de crearlo, lo
que genera el error.
4. Compruebe que los tipos de objeto y el recuento del esquema de HR se crearon correctamente. Para
ello, ejecute la siguiente consulta SQL. También puede comparar los resultados de las siguientes
consultas con los resultados que se enumeran en la hoja de cálculo que proporciona AWS en este
sitio.
OBJECT_TYPE COUNT(*)
INDEX 7
PROCEDURE 2
SEQUENCE 3
TABLE 7
Version 1/1/2016
41
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
VIEW 1
CONSTRAINT_TYPE COUNT(*)
R 10
P 7
C 2
6. Compruebe el número total de tablas y el número de filas de cada tabla. Para ello, ejecute la siguiente
consulta SQL:
TABLE_NAME NUM_ROWS
COUNTRIES 25
DEPARTMENTS 27
EMPLOYEES 107
JOBS 19
JOB_HISTORY 10
LOCATIONS 23
REGIONS 4
Version 1/1/2016
42
AWS Database Migration Service
Guía de la migración paso a paso
Paso 4: Probar la conectividad con la
instancia de base de datos de Aurora
7. Compruebe la relación en las tablas. Vea los departamentos con más de 10 empleados mediante la
ejecución de la siguiente consulta SQL:
DEPARTMENT_NAME COUNT(*)
Sales 34
Shipping 45
Para probar la conexión a su instancia de base de datos de Aurora mediante SQL Workbench/J
1. En SQL Workbench/J, seleccione File y, después, Connect window. Elija el icono de creación de un
nuevo perfil de conexión y utilice la siguiente información: Conéctese a la instancia de base de datos
de Aurora en SQL Workbench/J con la información que se muestra a continuación
2. Para probar la conexión, seleccione Test. Seleccione OK para cerrar el cuadro de diálogo y luego OK
para crear el perfil de conexión.
Version 1/1/2016
43
AWS Database Migration Service
Guía de la migración paso a paso
Paso 4: Probar la conectividad con la
instancia de base de datos de Aurora
Note
Version 1/1/2016
44
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
1. Inicie la herramienta de conversión de esquemas de AWS (AWS SCT). En AWS SCT, seleccione
File y, a continuación, New Project. Cree un nuevo proyecto llamado DMSDemoProject. Indique la
siguiente información en la ventana de nuevo proyecto y, a continuación, seleccione OK.
2. Elija Connect to Oracle. En el cuadro de diálogo Connect to Oracle, indique la siguiente información y
seleccione Test Connection.
Version 1/1/2016
45
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
convertir los esquemas de Oracle a Aurora
Para este parámetro Haga lo siguiente
3. Seleccione OK para cerrar la alerta y, a continuación, seleccione OK para cerrar el cuadro de diálogo
e iniciar la conexión a la instancia de base de datos de Oracle. A continuación se muestra la estructura
de base de datos en la instancia de base de datos de Oracle. Seleccione solo el esquema de HR.
Version 1/1/2016
46
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
convertir los esquemas de Oracle a Aurora
4. Elija Connect to Amazon Aurora. En el cuadro de diálogo Connect to Amazon Aurora, indique la
siguiente información y seleccione Test Connection.
Version 1/1/2016
47
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
convertir los esquemas de Oracle a Aurora
AWS SCT analiza el esquema de HR y crea un informe de evaluación de migración de base de datos
para la conversión a Amazon Aurora.
5. Seleccione OK para cerrar la alerta y, a continuación, seleccione OK para cerrar el cuadro de diálogo
e iniciar la conexión a la instancia de base de datos de Amazon Aurora.
6. Haga clic con el botón derecho en el esquema de HR y seleccione Create Report.
Version 1/1/2016
48
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
7. Compruebe el informeconvertir
y los elementos de acción
los esquemas que sugiere.
de Oracle El informe describe el tipo de objetos
a Aurora
que se pueden convertir mediante AWS SCT, junto con los posibles problemas de migración y las
medidas para resolver estos problemas. Para esta guía, debería aparecer algo similar a lo siguiente.
8. Guarde el informe en formato .pdf o .csv para realizar un análisis detallado y, a continuación,
seleccione la pestaña Action Items. En los elementos de acción, verá dos cuestiones: 1. MySQL no es
compatible con las restricciones de comprobación y 2. MySQL no admite secuencias.
En cuanto al elemento de acción número 2, existen tres objetos de secuencia en la base de datos de
origen que se utilizan para generar claves primarias para las tablas EMPLOYEES (EMPLOYEE_ID),
DEPARTMENTS (DEPARTMENT_ID) y LOCATIONS (LOCATION_ID). Tal como se ha descrito
anteriormente en esta guía, una alternativa al uso de secuencias para claves sustitutas en Aurora
es usar la característica auto_increment. Para activar la característica auto_increment, debe cambiar
la configuración de SCT. Para no extendernos demasiado, los siguientes subpasos muestran cómo
activar auto_increment únicamente para la columna EMPLOYEE_ID en la tabla EMPLOYEES. El
mismo procedimiento se puede repetir para el resto de objetos de secuencia.
Antes de empezar, tenga en cuenta que activar la opción auto_increment requiere algunos pasos
adicionales a través de SCT por los siguientes motivos:
Version 1/1/2016
49
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
• De forma predeterminada, SCT
convertir los convierte
esquemastodos los tipos
de Oracle de datos NUMBER (Oracle) a DECIMAL en
a Aurora
Aurora (http://docs.aws.amazon.com/dms/latest/userguide/ SchemaConversionTool/latest/userguide/
CHAP_SchemaConversionTool.Reference.ConversionSupport.Oracle.html#d0e50104).
• Aurora no admite auto_increment para el tipo de datos DECIMAL. Por lo tanto, el tipo de datos de la
columna de la clave primaria y de las columnas de clave externa correspondientes deben cambiarse
por uno de los tipos de datos INTEGER como INT, SMALLINT, MEDIUMINT o BIGINT como parte
del esquema de conversión.
La buena noticia es que la última versión de SCT proporciona una característica Mapping Rules que
se puede utilizar para lograr la transformación citada si se llevan a cabo los siguientes pasos:
1. Para la tabla EMPLOYEES, debe identificar la clave primaria y las relaciones de claves externas
al ejecutar la siguiente consulta en la base de datos de origen de Oracle. Tenga en cuenta que las
columnas deben especificarse en las reglas de mapeo de SCT.
SELECT * FROM
(SELECT
PK.TABLE_NAME,
C.COLUMN_NAME,
PK.CONSTRAINT_TYPE
FROM DBA_CONSTRAINTS PK,
DBA_CONS_COLUMNS C
WHERE PK.CONSTRAINT_NAME = C.CONSTRAINT_NAME
AND PK.OWNER = 'HR' AND PK.TABLE_NAME = 'EMPLOYEES' AND PK.CONSTRAINT_TYPE =
'P'
UNION
SELECT
FK.TABLE_NAME,
COL.COLUMN_NAME,
FK.CONSTRAINT_TYPE
FROM DBA_CONSTRAINTS PK,
DBA_CONSTRAINTS FK,
DBA_CONS_COLUMNS COL
WHERE PK.CONSTRAINT_NAME = FK.R_CONSTRAINT_NAME
AND FK.CONSTRAINT_TYPE = 'R'
AND FK.CONSTRAINT_NAME = COL.CONSTRAINT_NAME
AND PK.OWNER = 'HR' AND PK.TABLE_NAME = 'EMPLOYEES' AND PK.CONSTRAINT_TYPE =
'P' )
ORDER BY 3 ASC;
Version 1/1/2016
50
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
convertir los esquemas
Para este parámetro Regla 1de OracleRegla
a Aurora
2 Regla 3 Regla 4
Donde HR HR HR HR
Tenga en cuenta que en una situación real elegiría el tipo de datos en función de sus requisitos.
4. Elija Yes para responder a “Would you like to save Mapping Rule settings?”
9. Haga clic con el botón derecho en el esquema de HR y, a continuación, seleccione Convert schema.
Version 1/1/2016
51
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
convertir los esquemas de Oracle a Aurora
10. Haga clic en Yes para el mensaje de confirmación. AWS SCT convierte el esquema al formato de la
base de datos de destino.
11. Elija el esquema de HR y, a continuación, seleccione Apply to database para aplicar los scripts de
esquema a la instancia de destino de Aurora, tal como se muestra a continuación.
Version 1/1/2016
52
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar la herramienta de conversión
de esquemas de AWS (AWS SCT) para
convertir los esquemas de Oracle a Aurora
12. Elija el esquema de HR y, a continuación, Refresh from Database para actualizar desde la base de
datos de destino, tal y como se muestra a continuación.
Version 1/1/2016
53
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Validar la conversión de esquemas
Version 1/1/2016
54
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Validar la conversión de esquemas
,TABLE_SCHEMA AS OBJECT_SCHEMA
FROM information_schema.TABLES
where TABLE_TYPE='BASE TABLE'
UNION
SELECT 'VIEW' AS OBJECT_TYPE
,TABLE_NAME AS OBJECT_NAME
,TABLE_SCHEMA AS OBJECT_SCHEMA
FROM information_schema.VIEWS
UNION
OBJECT_TYPE COUNT(*)
INDEX 7
PROCEDURE 2
TABLE 7
TRIGGER 4
VIEW 1
A continuación, ejecute la siguiente consulta para obtener información sobre las restricciones de
tablas:
SELECT CONSTRAINT_TYPE,COUNT(*)
FROM information_schema.TABLE_CONSTRAINTS where constraint_schema='HR'
GROUP BY CONSTRAINT_TYPE;
Version 1/1/2016
55
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Validar la conversión de esquemas
CONSTRAINT_TYPE COUNT(*)
FOREIGN KEY 10
PRIMARY KEY 7
3. Realice los siguientes pasos para activar la opción auto_increment en la tabla EMPLOYEES para
emular la funcionalidad de la secuencia de la base de datos de origen de Oracle.
SELECT
kcu.constraint_name,
kcu.column_name,
col.data_type,
kcu.table_schema,
kcu.table_name,
kcu.referenced_column_name
FROM
information_schema.key_column_usage kcu,
information_schema.table_constraints tc,
information_schema.columns col
WHERE kcu.referenced_table_schema = 'HR'
AND kcu.referenced_table_name = 'EMPLOYEES'
AND kcu.referenced_table_name=tc.table_name
AND kcu.referenced_table_schema=tc.table_schema
AND tc.constraint_type='PRIMARY KEY'
AND col.column_name=kcu.column_name
and col.table_name=kcu.table_name
ORDER BY kcu.table_name,kcu.column_name;
SET FOREIGN_KEY_CHECKS=0;
Version 1/1/2016
56
AWS Database Migration Service
Guía de la migración paso a paso
Paso 7: Crear una instancia de replicación de AWS DMS
4. La siguiente tabla muestra el número de objetos esperado y si las migró AWS SCT.
INDEX 7 7 Sí
PROCEDURE 2 2 Sí
TABLE 7 7 Sí
VIEW 1 1 Sí
Clave primaria 10 10 Sí
Clave externa 7 7 Sí
5. Valide los resultados mencionados en la hoja de cálculo que proporciona AWS en este sitio o el
documento de texto que proporciona AWS en este sitio.
Version 1/1/2016
57
AWS Database Migration Service
Guía de la migración paso a paso
Paso 8: Crear los puntos de enlace
de origen y destino de AWS DMS
Las instancias de replicación de DMS realizan la migración de datos real entre el origen y el destino. La
instancia de replicación también almacena en caché los registros de transacción durante la migración. La
capacidad de la CPU y de la memoria de una instancia de replicación influirá en el tiempo necesario para
llevar a cabo la migración.
Version 1/1/2016
58
AWS Database Migration Service
Guía de la migración paso a paso
Paso 8: Crear los puntos de enlace
de origen y destino de AWS DMS
Para especificar los puntos de enlace de la base de datos de origen o de destino a con la consola
de AWS
Version 1/1/2016
59
AWS Database Migration Service
Guía de la migración paso a paso
Paso 8: Crear los puntos de enlace
de origen y destino de AWS DMS
2. Para desactivar las comprobaciones de claves externas durante la carga inicial de datos, debe
agregar los siguientes comandos en la instancia de base de datos de destino de Aurora. En la
siguiente sección Advanced que se muestra a continuación, escriba los siguientes comandos para
Extra connection attributes: initstmt=SET FOREIGN_KEY_CHECKS=0, autocommit=1
El primer comando desactiva las comprobaciones de claves externas durante una carga y el segundo
comando confirma las transacciones que ejecuta DMS.
Version 1/1/2016
60
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
3. Elija Next.
1. En la página Create Task, especifique las opciones de la tarea. La tabla siguiente describe la
configuración.
Version 1/1/2016
61
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
2. Bajo Task Settings, seleccione Do nothing para Target table preparation mode, porque ya ha creado
las tablas mediante la herramienta de migración de esquemas. Dado que esta migración no contiene
ningún LOB, puede dejar la configuración predeterminada de los LOB.
De forma opcional, puede seleccionar Enable logging. Si activa el registro, se le cobrarán cargos
adicionales de Amazon CloudWatch por la creación de los registros de CloudWatch. En esta guía, los
registros no son necesarios.
Version 1/1/2016
62
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
Version 1/1/2016
63
AWS Database Migration Service
Guía de la migración paso a paso
Paso 10: Comprobar que la migración
de datos se realizó correctamente
La sección Tasks le muestra el estado de la tarea de migración.
Puede supervisar su tarea si elige Enable logging al configurar la tarea. A continuación, puede ver las
métricas de CloudWatch haciendo lo siguiente:
Para comparar los resultados de la tarea de migración con los resultados esperados
Version 1/1/2016
64
AWS Database Migration Service
Guía de la migración paso a paso
Paso 10: Comprobar que la migración
de datos se realizó correctamente
Show databases;
Use HR;
SELECT TABLE_NAME,TABLE_ROWS
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'HR' and TABLE_TYPE='BASE TABLE' order by 1;
Version 1/1/2016
65
AWS Database Migration Service
Guía de la migración paso a paso
Paso 11: Eliminar los recursos de la guía
5. Para verificar si el resultado de las tablas y el número de filas de la consulta anterior coincide con lo
que se espera de RDS Oracle, compare sus resultados con los de la hoja de cálculo proporcionada
por AWS en este sitio.
6. Ejecute la siguiente consulta para comprobar la relación en las tablas; esta consulta comprueba los
departamentos con empleados con un valor superior a 10.
SELECT B.DEPARTMENT_NAME,COUNT(*)
FROM HR.EMPLOYEES A,HR.DEPARTMENTS B
WHERE A.DEPARTMENT_ID=B.DEPARTMENT_ID
GROUP BY B.DEPARTMENT_NAME HAVING COUNT(*) > 10
ORDER BY 1;
department_name count(*)
Sales 34
Shipping 45
Ahora ha completado correctamente una migración de base de datos desde una instancia de base de
datos de Amazon RDS Oracle a Amazon Aurora.
Version 1/1/2016
66
AWS Database Migration Service
Guía de la migración paso a paso
Pasos siguientes
Tenga en cuenta que si está registrado como usuario de AWS Identity and Access Management (IAM),
debe disponer de los permisos adecuados para acceder a AWS CloudFormation.
2. Elija su pila de CloudFormation, DMSdemo.
3. En Actions, elija Delete stack.
El estado de la pila cambia a DELETE_IN_PROGRESS mientras AWS CloudFormation limpia los recursos
asociados a la pila de DMSdemo. Cuando AWS CloudFormation termina de limpiar recursos, quita la pila de
la lista.
Pasos siguientes
Puede explorar otras características de AWS DMS que no se incluyeron en esta guía, como, por ejemplo,
las siguientes:
• La captura de datos de cambios (CDC) de AWS DMS, para la replicación de datos continuada.
• Las acciones de transformación que le permiten especificar y aplicar transformaciones a la tabla o
esquema seleccionados como parte del proceso de migración.
Version 1/1/2016
67
AWS Database Migration Service
Guía de la migración paso a paso
Referencias
Referencias
La documentación y esquemas de ejemplo siguientes son referencias útiles para esta guía:
Version 1/1/2016
68
AWS Database Migration Service
Guía de la migración paso a paso
Esta guía le servirá de introducción para la migración de bases de datos heterogéneas de Amazon
RDS for Oracle a Amazon Redshift con AWS Database Migration Service (AWS DMS) y la herramienta
de conversión de esquemas de AWS (AWS SCT). Este ejercicio de introducción no cubre todas las
situaciones, pero ofrece una buena descripción de los pasos que se deben seguir en la migración.
Es importante saber que AWS DMS y AWS SCT son dos herramientas diferentes y atienden a diferentes
necesidades. No interactúan entre sí en el proceso de migración. A grandes rasgos, los pasos de esta
migración son los siguientes:
Esta guía utiliza una plantilla de AWS CloudFormation personalizada para crear instancias de base de
datos de RDS para Oracle y Amazon Redshift. Después utiliza un script de comando de SQL para instalar
un esquema de ejemplo y datos en la instancia de base de datos de Oracle RDS que se va a migrar a
Amazon Redshift más adelante.
Version 1/1/2016
69
AWS Database Migration Service
Guía de la migración paso a paso
Requisitos previos
Para completar esta guía se necesitan dos horas aproximadamente. Asegúrese de seguir las instrucciones
para eliminar los recursos al final de esta guía con el fin de evitar cargos adicionales.
Temas
• Requisitos previos (p. 70)
• Arquitectura de migración (p. 70)
• Migración paso a paso (p. 72)
• Pasos siguientes (p. 106)
• Referencias (p. 106)
Requisitos previos
Los siguientes requisitos previos también son necesarios para completar esta guía:
• Conocer Amazon RDS, Amazon Redshift, las tecnologías de base de datos aplicables y SQL.
• Los scripts personalizados que incluyen la creación de las tablas que se van a migrar y las consultas
SQL para confirmar la migración se enumeran a continuación:
• Instrucciones de SQL para generar un esquema de SH
• Plantilla de AWS CloudFormation
Cada uno de los pasos de la guía también contiene un enlace para descargar el archivo relevante o
incluye la consulta exacta del paso.
• Una cuenta de AWS con las credenciales de AWS Identity and Access Management (IAM) con las que
podrá iniciar instancias de RDS, AWS Database Migration Service (AWS DMS) y clústeres de Amazon
Redshift en su región de AWS. Para obtener información sobre las credenciales de IAM, consulte la
información sobre cómo crear un usuario de IAM.
• Conocimientos básicos del servicio Amazon Virtual Private Cloud (Amazon VPC) y de los grupos de
seguridad. Para obtener información sobre cómo utilizar Amazon VPC con Amazon RDS, consulte la
sección sobre Virtual Private Cloud (VPC) y Amazon RDS. Para obtener información sobre los grupos
de seguridad de Amazon RDS, consulte la sección sobre grupos de seguridad de Amazon RDS. Para
obtener información sobre cómo utilizar Amazon Redshift en una VPC, consulte la sección sobre
administración de clústeres en Amazon Virtual Private Cloud (VPC).
• Conocimiento de las características compatibles y las limitaciones de AWS DMS. Para obtener
información, consulte la sección que explica qué es AWS Database Migration Service.
• Conocimientos sobre las opciones conversión del tipo de datos admitidas para Oracle y Amazon
Redshift. Para obtener información sobre los tipos de datos para Oracle como origen, consulte la sección
sobre cómo usar una base de datos de Oracle como origen para AWS Database Migration Service. Para
obtener información sobre los tipos de datos para Amazon Redshift como destino, consulte la sección
sobre cómo usar una base de datos de Amazon Redshift como destino para AWS Database Migration
Service .
Para obtener más información sobre AWS DMS, consulte la documentación de AWS DMS.
Arquitectura de migración
Esta guía utiliza AWS CloudFormation para crear una topología de red sencilla para la migración de bases
de datos que incluya la base de datos de origen, la instancia de replicación y la base de datos de destino
en la misma VPC. Para obtener más información sobre AWS CloudFormation, consulte la documentación
de CloudFormation.
Version 1/1/2016
70
AWS Database Migration Service
Guía de la migración paso a paso
Arquitectura de migración
Aprovisionamos los recursos de AWS que se necesitan para esta guía de AWS DMS través de AWS
CloudFormation. Estos recursos incluyen una VPC y una instancia de Amazon RDS para Oracle y un
clúster de Amazon Redshift. Realizamos el aprovisionamiento a través de CloudFormation porque
simplifica el proceso, por lo que podemos concentrarnos en tareas relacionadas con la migración de datos.
Cuando crea una pila a partir de una plantilla de CloudFormation, esta aprovisiona los siguientes recursos:
• Una VPC con CIDR (10.0.0.0/24) con dos subredes públicas en su región, DBSubnet1 en la dirección
10.0.0.0/26 en la zona de disponibilidad (AZ) 1 y DBSubnet2 en la dirección 10.0.0.64/26, en AZ 12.
• Un grupo de subred de base de datos que incluye DBSubnet1 y DBSubnet2.
• Oracle RDS Standard Edition Two con estas opciones de implementación:
• Licencia incluida
• Configuración de Single-AZ
• db.m3.medium o clase de instancia equivalente
• Puerto 1521
• Opción y grupos de parámetros predeterminados
• Clúster de Amazon Redshift con estas opciones de implementación:
• dc1.large
• Puerto 5439
• Grupo de parámetros predeterminado
• Un grupo de seguridad con acceso desde un equipo o 0.0.0.0/0 (acceso desde cualquier lugar) en
función del parámetro de entrada
Hemos diseñado la plantilla CloudFormation para que el usuario no tenga que intervenir demasiado.
Aprovisiona los recursos necesarios de AWS con las configuraciones mínimas recomendadas. Sin
embargo, si desea cambiar algunas de las configuraciones y parámetros, como el bloque de VPC CIDR y
los tipos de instancia de Amazon RDS, no dude en actualizar la plantilla.
Utilizamos la consola de administración de AWS para aprovisionar los recursos de AWS DMS, como la
instancia de replicación, los puntos de enlace y las tareas. Puede instalar herramientas de cliente, como
SQL Workbench/J y la herramienta de conversión de esquemas de AWS (AWS SCT) en su equipo local
para conectarse a las instancias de Amazon RDS.
Version 1/1/2016
71
AWS Database Migration Service
Guía de la migración paso a paso
Migración paso a paso
Temas
• Paso 1: Iniciar las instancias de RDS en una VPC con la plantilla de CloudFormation (p. 73)
• Paso 2: Instalar las herramientas de SQL y la herramienta de conversión de esquemas de AWS en su
equipo local (p. 78)
• Paso 3: Comprobar la conectividad de la instancia de base de datos de Oracle y crear el esquema de
ejemplo (p. 81)
• Paso 4: Probar la conectividad a la base de datos de Amazon Redshift (p. 85)
• Paso 5: Utilizar AWS SCT para convertir un esquema de Oracle a Amazon Redshift (p. 86)
• Paso 6: Validar la conversión de esquemas (p. 94)
• Paso 7: Crear una instancia de replicación de AWS DMS (p. 95)
Version 1/1/2016
72
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
• Paso 8: Crear los puntos de enlace de origen y destino de AWS DMS (p. 96)
• Paso 9: Crear y ejecutar la tarea de migración de AWS DMS (p. 99)
• Paso 10: Comprobar que la migración de datos se realizó correctamente (p. 103)
• Paso 11: Eliminar los recursos de la guía (p. 105)
Para utilizar AWS CloudFormation con el fin de crear recursos de Amazon RDS para esta guía
https://dms-sbs.s3.amazonaws.com/Oracle_Redshift_For_DMSDemo.template
Version 1/1/2016
73
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
4. Elija Next. En la página Specify Details, proporcione los valores de los parámetros según se muestra a
continuación.
Version 1/1/2016
74
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
Para este parámetro Haga lo siguiente
Version 1/1/2016
75
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
Version 1/1/2016
76
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Iniciar las instancias de RDS en
una VPC con la plantilla de CloudFormation
Version 1/1/2016
77
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Instalar las herramientas de SQL y la herramienta
de conversión de esquemas de AWS en su equipo local
7. AWS puede tardar aproximadamente 20 minutos o más en crear la pila con una instancia Amazon
RDS para Oracle y un clúster de Amazon Redshift.
Version 1/1/2016
78
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Instalar las herramientas de SQL y la herramienta
de conversión de esquemas de AWS en su equipo local
En esta guía, suponemos que va a utilizar el cliente SQL Workbench/J para conectarse a instancias RDS
para validar la migración.
1. Descargue SQL Workbench/J desde el sitio web de SQL Workbench/J e instálelo en su equipo local.
Este cliente SQL es gratuito y de código abierto, además es independiente del sistema de gestión de
bases de datos.
2. Descargue el controlador JDBC de Oracle Database 12.1.0.2 (ojdbc7.jar).
3. Descargue el controlador de Amazon Redshift (RedshiftJDBC41-1.1.17.1017.jar).
4. Cuando se utiliza SQL Workbench/J, hay que configurar controladores de JDBC para Oracle y
Amazon Redshift para poder establecer la conectividad, tal como se describe a continuación.
Version 1/1/2016
79
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Instalar las herramientas de SQL y la herramienta
de conversión de esquemas de AWS en su equipo local
1. Descargue AWS SCT desde Instalar y actualizar la herramienta de conversión de esquemas de AWS
en la Guía del usuario de la herramienta de conversión de esquemas de AWS.
2. Siga las instrucciones para instalar AWS SCT. De forma predeterminada, la herramienta se instala en
el directorio C:\Program Files\AWS Schema Conversion Tool\AWS.
3. Iniciar AWS SCT.
4. En AWS SCT, seleccione Global Settings en Settings.
5. Seleccione Settings, Global Settings y, a continuación, Drivers y Browse para Oracle Driver Path.
Busque el controlador JDBC para Oracle y seleccione OK.
6. Seleccione Browse para Amazon Redshift Driver Path. Busque el controlador JDBC para Amazon
Redshift y seleccione OK. Seleccione OK para cerrar el cuadro de diálogo.
Version 1/1/2016
80
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
Para probar la conexión a la instancia de base de datos de Oracle con SQL Workbench/J y crear
el esquema de ejemplo
1. En SQL Workbench/J, seleccione File y, después, Connect window. Cree un nuevo perfil de conexión
con la información siguiente.
Version 1/1/2016
81
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
Para este parámetro Haga lo siguiente
2. Para probar la conexión, seleccione Test. Seleccione OK para cerrar el cuadro de diálogo y luego OK
para crear el perfil de conexión.
Version 1/1/2016
82
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
Note
Version 1/1/2016
83
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Comprobar la conectividad de la instancia de
base de datos de Oracle y crear el esquema de ejemplo
4. Compruebe que los tipos de objeto y el recuento del esquema de SH se crearon correctamente; para
ello, ejecute la siguiente consulta SQL.
Version 1/1/2016
84
AWS Database Migration Service
Guía de la migración paso a paso
Paso 4: Probar la conectividad a la
base de datos de Amazon Redshift
OBJECT_TYPE | COUNT(*)
----------------+---------
INDEX PARTITION | 40
TABLE PARTITION | 8
TABLE | 5
INDEX | 15
5. Compruebe el número total de tablas y el número de filas de cada tabla; para ello, ejecute la siguiente
consulta SQL.
TABLE_NAME | NUM_ROWS
-----------+---------
CHANNELS | 5
CUSTOMERS | 8
PRODUCTS | 66
PROMOTIONS | 503
SALES | 553
6. Compruebe la integridad de las tablas. Compruebe el número de ventas realizadas en los diferentes
canales; para ello, ejecute la siguiente consulta SQL.
CHANNEL_DESC | COUNT(*)
-------------+---------
Direct Sales | 710
Internet | 52
Partners | 344
Note
Los ejemplos anteriores son representativos de las consultas de validación. Cuando lleve a cabo
una migración real, debe desarrollar consultas similares para validar el esquema y la integridad de
los datos.
Para probar la conectividad a la base de datos de Amazon Redshift con SQL Workbench/J
1. En SQL Workbench/J, seleccione File y, después, Connect window. Seleccione el icono Create a new
connection profile. Conéctese a la base de datos de Amazon Redshift en SQL Workbench/J con la
información que se indica a continuación.
Version 1/1/2016
85
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
2. Para probar la conexión, seleccione Test. Seleccione OK para cerrar el cuadro de diálogo y luego OK
para crear el perfil de conexión.
Note
Version 1/1/2016
86
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
Para convertir un esquema de Oracle a un esquema de Amazon Redshift con AWS SCT
1. Iniciar AWS SCT. En AWS SCT, seleccione File, a continuación, seleccione New Project. Cree un
nuevo proyecto llamado DWSchemaMigrationDemoProject. Indique la siguiente información en la
ventana New Project y, a continuación, seleccione OK.
2. Elija Connect to Oracle. En el cuadro de diálogo Connect to Oracle, indique la siguiente información y
seleccione Test Connection.
Version 1/1/2016
87
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
Para este parámetro Haga lo siguiente
servidor: "abc12345678.cqi87654abc.us-
west-2.rds.amazonaws.com".
3. Seleccione OK para cerrar la alerta y, a continuación, seleccione OK para cerrar el cuadro de diálogo
e iniciar la conexión a la instancia de base de datos de Oracle. La estructura de la base de datos en la
instancia de base de datos de Oracle se muestra a continuación. Seleccione solo el esquema de SH.
Version 1/1/2016
88
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
Note
4. Elija Connect to Amazon Redshift. En el cuadro de diálogo Connect to Amazon Redshift, indique la
siguiente información y seleccione Test Connection.
Version 1/1/2016
89
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
Para este parámetro Haga lo siguiente
redshiftcluster-abc123567.abc87654321.us-
west-2.redshift.amazonaws.com"
AWS SCT analiza el esquema de SH y crea un informe sobre la evaluación de la migración de la base
de datos para la conversión a Amazon Redshift.
5. Seleccione OK para cerrar la alerta y, a continuación, seleccione OK para cerrar el cuadro de diálogo
e iniciar la conexión a la instancia de base de datos de Amazon Redshift.
6. En la vista Oracle DW, abra el menú contextual (clic con el botón secundario) para el esquema SH y
seleccione Create Report.
7. Revise el resumen del informe. Para guardar el informe, seleccione Save to CSV o Save to PDF.
El informe describe el tipo de objetos que se pueden convertir mediante AWS SCT, junto con los
posibles problemas de migración y las medidas para resolver estos problemas. Para esta guía,
debería aparecer algo similar a lo siguiente.
Version 1/1/2016
90
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
Version 1/1/2016
91
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
8. Seleccione la pestaña Action Items. El informe describe el tipo de objetos que se pueden convertir
mediante AWS SCT, junto con los posibles problemas de migración y las medidas para resolver estos
problemas. Para esta guía, debería aparecer algo similar a lo siguiente.
9. Abra el menú contextual (clic con el botón secundario) para el elemento SH de la lista Schemas y,
a continuación, seleccione Collect Statistics. AWS SCT analiza el origen de datos para recomendar
las mejores claves para el destino de la base de datos de Amazon Redshift. Para obtener más
información, consulte la sección sobre cómo recopilar o cargar estadísticas para la herramienta de
conversión de esquemas de AWS.
10. Abra el menú contextual (clic con el botón secundario) para el esquema de SH y, después, seleccione
Convert schema.
11. Haga clic en Yes para el mensaje de confirmación. AWS SCT convierte el esquema al formato de la
base de datos de destino.
Version 1/1/2016
92
AWS Database Migration Service
Guía de la migración paso a paso
Paso 5: Utilizar AWS SCT para convertir
un esquema de Oracle a Amazon Redshift
Note
Version 1/1/2016
93
AWS Database Migration Service
Guía de la migración paso a paso
Paso 6: Validar la conversión de esquemas
12. En la vista de Amazon Redshift, abra el menú contextual (clic con el botón secundario) para el
esquema de SH y, a continuación, seleccione Apply to database para aplicar los scripts del esquema
en la instancia de Amazon Redshift de destino.
13. Abra el menú contextual (clic con el botón secundario) del esquema de SH y, a continuación,
seleccione Refresh from Database para actualizar desde la base de datos de destino.
3. Compruebe las claves de ordenación y distribución que se crearon en el clúster de Amazon Redshift
con la siguiente consulta.
SELECT tablename,
"column",
TYPE,
encoding,
distkey,
sortkey,
"notnull"
FROM pg_table_def
WHERE (distkey = TRUE OR sortkey <> 0);
Los resultados de la consulta reflejan las selecciones de claves de distribución (distkey) y claves de
ordenación (sortkey) mediante la administración de claves de AWS SCT.
Version 1/1/2016
94
AWS Database Migration Service
Guía de la migración paso a paso
Paso 7: Crear una instancia de replicación de AWS DMS
Las instancias de replicación de DMS realizan la migración de datos real entre el origen y el destino. La
instancia de replicación también almacena en caché los registros de transacción durante la migración. La
capacidad de la CPU y de la memoria de una instancia de replicación influirá en el tiempo necesario para
llevar a cabo la migración.
Version 1/1/2016
95
AWS Database Migration Service
Guía de la migración paso a paso
Paso 8: Crear los puntos de enlace
de origen y destino de AWS DMS
Para crear una instancia de replicación de AWS DMS
1. Inicie sesión en la consola de administración de AWS y abra la consola de AWS DMS en https://
console.aws.amazon.com/dms/, a continuación, seleccione Create Migration. Si ha iniciado sesión
como usuario de AWS Identity and Access Management (IAM), será preciso que disponga de los
permisos adecuados para tener acceso a AWS DMS. Para obtener más información sobre los
permisos necesarios, consulte la sección sobre permisos de IAM necesarios para utilizar AWS DMS.
2. Haga clic en Create migration para iniciar la migración de una base de datos.
3. En la página Welcome, elija Next.
4. En la página Create replication instance, especifique la información de la instancia de replicación de la
siguiente manera.
Para especificar los puntos de enlace de la base de datos de origen o de destino a con la consola
de AWS
Version 1/1/2016
96
AWS Database Migration Service
Guía de la migración paso a paso
Paso 8: Crear los puntos de enlace
de origen y destino de AWS DMS
Para este parámetro Haga lo siguiente
Server name que utilizó para AWS SCT, como,
por ejemplo, "abc123567.abc87654321.us-
west-2.rds.amazonaws.com".
Version 1/1/2016
97
AWS Database Migration Service
Guía de la migración paso a paso
Paso 8: Crear los puntos de enlace
de origen y destino de AWS DMS
Version 1/1/2016
98
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
1. En la página Create Task, especifique las opciones de la tarea. La tabla siguiente describe la
configuración.
Version 1/1/2016
99
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
2. En la sección Task Settings, especifique la configuración tal y como se muestra en la siguiente tabla.
Version 1/1/2016
100
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
3. En la sección Selection rules, especifique la configuración tal y como se muestra en la siguiente tabla.
Version 1/1/2016
101
AWS Database Migration Service
Guía de la migración paso a paso
Paso 9: Crear y ejecutar la tarea de migración de AWS DMS
5. Haga clic en Create task. La tarea comienza inmediatamente. La sección Tasks le muestra el estado de
la tarea de migración.
Version 1/1/2016
102
AWS Database Migration Service
Guía de la migración paso a paso
Paso 10: Comprobar que la migración
de datos se realizó correctamente
Para comparar los resultados de la tarea de migración con los resultados esperados
Version 1/1/2016
103
AWS Database Migration Service
Guía de la migración paso a paso
Paso 10: Comprobar que la migración
de datos se realizó correctamente
Version 1/1/2016
104
AWS Database Migration Service
Guía de la migración paso a paso
Paso 11: Eliminar los recursos de la guía
order by 1;
table | tbl_rows
-----------+---------
channels | 5
customers | 8
products | 66
promotions | 503
sales | 1106
5. Para comprobar si los resultados de las tablas y el número de filas de la consulta anterior coinciden
con lo que se esperaba para RDS Oracle, compare los resultados con los de los pasos anteriores.
6. Ejecute la siguiente consulta para comprobar la relación en las tablas; esta consulta comprueba los
departamentos con empleados con un valor superior a 10.
channel_desc | count
-------------+------
Direct Sales | 355
Internet | 26
Partners | 172
DMS utilizar una operación COPY de Amazon Redshift para cargar los datos. De forma
predeterminada, el comando COPY se aplica automáticamente a la compresión cuando se realiza
una carga en una tabla de destino vacía. Los datos de ejemplo en esta guía no son lo suficientemente
grandes para aplicar la compresión automática. Cuando migre conjuntos de datos más grandes, con
COPY, se aplica la compresión automática.
Para obtener más información sobre la compresión automática en las tablas de Amazon Redshift,
consulte la sección sobre cómo cargar tablas con compresión automática.
SELECT *
FROM pg_table_def
WHERE schemaname = 'sh’;
Ahora ya ha completado correctamente la migración de una base de datos desde una instancia de la
bases de datos Amazon RDS for Oracle a Amazon Redshift.
Si ha iniciado sesión como usuario de IAM, será preciso que disponga de los permisos adecuados
para tener acceso a AWS CloudFormation.
2. Seleccione la pila de CloudFormation, OracletoRedshiftDWusingDMS.
3. En Actions, elija Delete stack.
El estado de la pila cambia a DELETE_IN_PROGRESS mientras AWS CloudFormation limpia los recursos
asociados a la pila de OracletoRedshiftDWusingDMS. Cuando AWS CloudFormation termina de
limpiar recursos, quita la pila de la lista.
Pasos siguientes
Puede explorar otras características de AWS DMS que no se incluyeron en esta guía, como, por ejemplo,
las siguientes:
• La captura de datos de cambios (CDC) de AWS DMS, para la replicación de datos continuada.
• Las acciones de transformación que le permiten especificar y aplicar transformaciones a la tabla o
esquema seleccionados como parte del proceso de migración.
Referencias
La documentación y esquemas de ejemplo siguientes son referencias útiles para esta guía:
Version 1/1/2016
106
AWS Database Migration Service
Guía de la migración paso a paso
Amazon Web Services (AWS) ofrece varios servicios que le permiten ejecutar una base de datos
compatible con MySQL en AWS. Amazon Relational Database Service (Amazon RDS) admite bases
de datos compatibles con MySQL, incluidas MySQL, MariaDB y Amazon Aurora. AWS Elastic Cloud
Computing Service (EC2) proporciona plataformas para la ejecución de bases de datos compatibles con
MySQL.
Instancias de base de datos Puede migrar datos directamente a partir de una instantánea de base
MySQL de RDS de datos MySQL de Amazon RDS a un clúster de base de datos de
Amazon Aurora. Para obtener más información, consulte Migración de
datos de una instancia de base de datos de Amazon RDS MySQL a un
clúster de base de datos de Amazon Aurora (p. 120).
Bases de datos MySQL ajenas Si la base de datos admite espacios de tablas InnoDB o MyISAM,
a Amazon RDS dispone de estas opciones para migrar sus datos a un clúster de base
de datos de Amazon Aurora:
Version 1/1/2016
107
AWS Database Migration Service
Guía de la migración paso a paso
Bases de datos que no son También puede utilizar AWS Database Migration Service (AWS DMS)
compatibles con MySQL para migrar datos desde una base de datos MySQL. Sin embargo,
en el caso de las bases de datos de gran tamaño, se puede reducir
bastante el tiempo necesario para migrar los datos si se copian los
archivos de origen para la base de datos y se restauran estos archivos
a una instancia de base de datos de Amazon Aurora tal y como se
describe en Migración de datos desde una base de datos MySQL
externa a Amazon Aurora mediante Amazon S3 (p. 109).
Version 1/1/2016
108
AWS Database Migration Service
Guía de la migración paso a paso
Migración de datos desde una base de datos MySQL
externa a Amazon Aurora mediante Amazon S3
Si la base de datos admite espacios de tablas InnoDB o MyISAM, dispone de estas opciones para migrar
sus datos a un clúster de base de datos de Amazon Aurora:
• Puede crear un volcado de los datos con la utilidad mysqldump y, a continuación, importar los datos
a un clúster de base de datos de Amazon Aurora existente. Para obtener más información, consulte
Migración de MySQL a Amazon Aurora con mysqldump (p. 120).
• Puede copiar los archivos de origen de la base de datos en un bucket de S3 y, a continuación,
restablecer un clúster de base de datos de Amazon Aurora a partir de dichos archivos. Esta opción
puede ser bastante más rápida que migrar los datos con mysqldump. Para obtener más información,
consulte Migración de datos desde una base de datos MySQL externa a Amazon Aurora mediante
Amazon S3 (p. 109).
Esta opción puede ser mucho más rápida que migrar datos mediante mysqldump, ya que mysqldump
repite todos los comandos para recrear el esquema y los datos a partir de la base de datos de origen en el
nuevo clúster de base de datos de Amazon Aurora. Al copiar los archivos de datos de origen de MySQL,
Amazon Aurora puede utilizar inmediatamente dichos archivos como datos para el clúster de base de
datos.
Version 1/1/2016
109
AWS Database Migration Service
Guía de la migración paso a paso
Requisitos previos
Note
Amazon Aurora no restaura todo lo que contiene la base de datos. Debe guardar el esquema y los valores
de la base de datos correspondientes a los siguientes elementos de la base de datos de origen MySQL o
MariaDB y añadirlos a su clúster de base de datos de Amazon Aurora restaurado una vez creado.
• Cuentas de usuario
• Funciones
• Procedimientos almacenados
• Información de zona horaria. Esta información se carga desde el sistema operativo local de su clúster de
base de datos de Amazon Aurora.
Requisitos previos
Antes de copiar los datos en un bucket de S3 y restaurar un clúster de base de datos a partir de dichos
archivos, debe hacer lo siguiente:
Permisos necesarios
Para migrar los datos de MySQL a un clúster de base de datos de Amazon Aurora, se requieren varios
permisos:
• El usuario que solicita que Amazon RDS cree un nuevo clúster a partir de un bucket de S3 debe tener
permiso para enumerar los buckets de su cuenta de AWS. Puede otorgar este permiso al usuario
mediante una política de AWS Identity and Access Management (IAM).
• Amazon RDS requiere permiso para realizar acciones por usted y acceder al bucket de S3 en el que
se almacenan los archivos utilizados para crear el clúster de base de datos de Amazon Aurora. Puede
otorgar los permisos necesarios a Amazon RDS mediante un rol de servicio de IAM.
• El usuario que realiza la solicitud también debe tener permiso para enumerar los roles de IAM para su
cuenta de AWS.
• Si el usuario solicitante crea el rol de servicio de IAM o solicita que Amazon RDS lo cree (mediante la
consola), entonces necesitará permiso para crear un rol de IAM para su cuenta de AWS.
Por ejemplo, las siguientes políticas de IAM otorgan a un usuario el número mínimo necesario de permisos
para usar la consola tanto para enumerar los roles de IAM, como para crear un rol de IAM y enumerar los
buckets de S3 para su cuenta.
{
"Version": "2012-10-17",
"Statement": [
{
Version 1/1/2016
110
AWS Database Migration Service
Guía de la migración paso a paso
Requisitos previos
"Effect": "Allow",
"Action": [
"iam:ListRoles",
"iam:CreateRole",
"iam:CreatePolicy",
"iam:AttachRolePolicy",
"s3:ListBucket",
"s3:ListObjects"
],
"Resource": "*"
}
]
}
Además, para que un usuario pueda asociar un rol de IAM a un bucket de S3, el usuario de IAM debe
disponer del permiso iam:PassRole para dicho rol de IAM. Este permiso hace que un administrador
pueda restringir los roles de IAM que un usuario puede asociar a buckets de S3.
Por ejemplo, la siguiente política de IAM permite a un usuario asociar el rol denominado S3Access a un
bucket de S3.
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"AllowS3AccessRole",
"Effect":"Allow",
"Action":"iam:PassRole",
"Resource":"arn:aws:iam::123456789012:role/S3Access"
}
]
}
Como alternativa, puede crear el rol manualmente realizando los siguientes pasos.
Para crear un rol de IAM para que Amazon RDS pueda acceder a S3
Version 1/1/2016
111
AWS Database Migration Service
Guía de la migración paso a paso
Paso 1: Realizar copias de seguridad de archivos
para restaurarlos como clúster de base de datos
10. Introduzca un Policy Name del tipo S3-bucket-policy. Añada el siguiente código en Policy
Document, sustituyendo el <nombre del bucket> por el nombre del bucket de S3 al que otorga
permiso de acceso.
En el documento de política también puede incluir un prefijo para el nombre de archivo. Si especifica
un prefijo, Amazon Aurora creará el clúster de base de datos con los archivos del bucket de S3 que
empiecen con dicho prefijo. Si no especifica ningún prefijo, Amazon Aurora creará el clúster de base
de datos con todos los archivos del bucket de S3.
Para especificar un prefijo, sustituya <prefijo> según el prefijo de sus nombres de archivo. Incluya
el asterisco (*) después del prefijo. Si no desea especificar ningún prefijo, introduzca únicamente un
asterisco.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": [
"arn:aws:s3:::<bucket name>"
]
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::<bucket name>/<prefix>*"
]
}
]
}
Por ejemplo, el siguiente comando crea una copia de seguridad de una base de datos MySQL y almacena
los archivos en la carpeta /s3-restore/backup.
Si desea comprimir su copia de seguridad en un solo archivo (divisible, si es necesario), puede utilizar la
opción --stream para guardar las copias de seguridad en uno de los siguientes formatos:
• Gzip (.gz)
• tar (.tar)
• Percona xbstream (.xbstream)
Version 1/1/2016
112
AWS Database Migration Service
Guía de la migración paso a paso
Paso 2: Copiar archivos en un bucket de Amazon S3
Por ejemplo, el siguiente comando crea una copia de seguridad de la base de datos MySQL dividida en
varios archivos Gzip.
Por ejemplo, el siguiente comando crea una copia de seguridad de la base de datos MySQL dividida en
varios archivos tar.
Por ejemplo, el siguiente comando crea una copia de seguridad de la base de datos MySQL dividida en
varios archivos xbstream.
innobackupex --stream=xbstream \
/mydata/s3-restore/backup | split -d --bytes=512000 \
- /mydata/s3-restore/backup/backup.xbstream
S3 limita el tamaño de un archivo cargado en un bucket a 5 terabytes (TB). Si los datos de la copia de
seguridad de su base de datos superan los 5 TB, entonces deberá utilizar el comando split para dividir
los archivos de copia de seguridad en varios archivos que ocupen menos de 5 TB.
Amazon Aurora no admite copias de seguridad parciales creadas con Percona Xtrabackup. No puede
utilizar las opciones --include, --tables-file o --databases para crear una copia de seguridad
parcial al realizar las copias de seguridad de los archivos de origen de su base de datos.
Amazon Aurora consume sus archivos de copia de seguridad en función del nombre de archivo.
Asegúrese de asignar la extensión de archivo adecuada a los archivos de copia de seguridad según
el formato del fichero: por ejemplo, .xbstream para archivos almacenados con el formato Percona
xbstream.
Amazon Aurora consume sus archivos de copia de seguridad en orden alfabético, así como según la
numeración natural. Utilice siempre la opción split al emitir el comando innobackupex para asegurarse
de que sus archivos de copia de seguridad se escriban y denominen en el orden adecuado.
Para obtener más información acerca de cómo crear y cargar un archivo en un bucket de S3, consulte la
sección sobre comenzar a utilizar Amazon Simple Storage Service en la Guía de introducción de Amazon
S3.
Version 1/1/2016
113
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Restaurar un clúster de base de
datos de Aurora desde un bucket de S3
Para restaurar un clúster de base de datos de Amazon Aurora a partir de archivos en un bucket de
S3
1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en https://
console.aws.amazon.com/rds/.
2. En el panel de RDS, seleccione Restore Aurora DB Cluster from S3.
3. En Specify Source Backup Details, especifique lo siguiente:
S3 Bucket Prefix (Optional) Especifique un prefijo de ruta de archivo para los archivos
almacenados en el bucket de S3. El S3 Bucket Prefix es
opcional. Si no especifica un prefijo, Amazon Aurora creará
el clúster de base de datos con todos los archivos de la
carpeta raíz del bucket de S3. Si especifica un prefijo,
Amazon Aurora creará el clúster de base de datos con los
archivos del bucket de S3 donde la ruta completa para el
archivo comienza con el prefijo especificado.
IAM Role Seleccione el rol de IAM que creó para autorizar por usted
el acceso de Amazon Aurora a S3. Si no ha creado un rol
de IAM, puede elegir Create a New Role para crear uno.
Version 1/1/2016
114
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Restaurar un clúster de base de
datos de Aurora desde un bucket de S3
5. En la página Specify DB Details, especifique la información del clúster de base de datos. La siguiente
tabla muestra la configuración de una instancia de base de datos.
Version 1/1/2016
115
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Restaurar un clúster de base de
datos de Aurora desde un bucket de S3
Publicly Accessible Seleccione Yes para darle al clúster de base de datos una
dirección IP pública; de lo contrario, seleccione No. Las
instancias en el clúster de base de datos pueden ser una
combinación de instancias de base de datos tanto públicas
como privadas. Para obtener más información sobre cómo
ocultar instancias desde el acceso público, consulte la
documentación de Amazon RDS .
Version 1/1/2016
116
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Restaurar un clúster de base de
datos de Aurora desde un bucket de S3
Para esta opción Haga lo siguiente
VPC Security Group(s) Seleccione uno o varios grupos de seguridad de VPC para
proteger el acceso de red al clúster de base de datos.
Seleccione Create a New VPC Security Group para que
Amazon RDS cree un grupo de seguridad de VPC. Para
obtener más información, consulte la información anterior
de este tema.
Version 1/1/2016
117
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Restaurar un clúster de base de
datos de Aurora desde un bucket de S3
Para esta opción Haga lo siguiente
Enable Encryption Seleccione Yes para activar el cifrado en reposo para este
clúster de base de datos. Para obtener más información,
consulte la documentación de Amazon RDS .
Enable Enhanced Monitoring Elija Yes para activar la recopilación de métricas en tiempo
real del sistema operativo en el que se ejecuta su clúster
de base de datos. Para obtener más información, consulte
la documentación de Amazon RDS .
Auto Minor Version Upgrade Seleccione Yes si desea activar su clúster de base
de datos de Aurora para recibir actualizaciones de
versión del motor de base de datos de MySQL menores
automáticamente cuando estén disponibles.
Version 1/1/2016
118
AWS Database Migration Service
Guía de la migración paso a paso
Paso 3: Restaurar un clúster de base de
datos de Aurora desde un bucket de S3
Version 1/1/2016
119
AWS Database Migration Service
Guía de la migración paso a paso
Migración de MySQL a Amazon Aurora con mysqldump
8. Elija Launch DB Instance para lanzar su instancia de base de datos de Aurora y, a continuación, Close
para cerrar el asistente.
En la consola de Amazon RDS, la nueva instancia de base de datos aparece en la lista de instancias
de base de datos. La instancia de la base de datos tiene el estado creating hasta que se cree la
instancia y se pueda usar. Cuando el estado cambie a available, puede conectarse a la instancia
principal de su clúster de base de datos. Dependiendo de la clase de instancia de base de datos y el
almacenamiento asignado, es posible que la instancia tarde varios minutos hasta que esté disponible.
Para ver el clúster que acaba de crear, seleccione la vista Clusters en la consola de Amazon RDS.
Para obtener más información, consulte la documentación de Amazon RDS .
Anote el puerto y el punto de enlace del clúster. Utilice el punto de enlace y el puerto del clúster en sus
cadenas de conexión JDBC y ODBC para cualquier aplicación que realice operaciones de lectura o
escritura.
Dado que Amazon Aurora es una base de datos compatible con MySQL, puede utilizar la utilidad
mysqldump para copiar datos de su base de datos MySQL o MariaDB a un clúster de base de datos de
Amazon Aurora existente.
Version 1/1/2016
120
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
Note
Dado que Amazon Aurora es compatible con MySQL, puede migrar datos desde la base de
datos MySQL configurando la replicación entre su base de datos MySQL, y un clúster de base de
datos de Amazon Aurora. Le recomendamos utilizar la versión 5.5 o posterior de la base de datos
MySQL.
Puede migrar una instantánea de base de datos de forma manual o automatizada. Una vez creado el
clúster de base de datos, podrá crear réplicas de Aurora opcionales.
1. Determine la cantidad de espacio que desea aprovisionar para su clúster de base de datos de Amazon
Aurora. Para obtener más información, consulte la documentación de Amazon RDS.
2. Utilice la consola para crear la instantánea en la región en la que se encuentra la instancia Amazon RDS
MySQL 5.6.
3. Si la instantánea de base de datos no se encuentra en la misma región que su clúster de base de
datos, utilice la consola de Amazon RDS para copiar la instantánea de base de datos a esa región.
Para obtener más información acerca de cómo copiar una instantánea de base de datos, consulte la
documentación de Amazon RDS .
4. Utilice la consola para migrar la instantánea de base de datos y crear un clúster de base de datos de
Amazon Aurora con las mismas bases de datos que la instancia de base de datos original de MySQL
5.6.
Warning
Amazon RDS limita cada cuenta de AWS a una copia de la instantánea a la vez en cada región.
Version 1/1/2016
121
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
de las tablas comprimidas que se van a migrar desde su instancia de base de datos MySQL tenga un
tamaño superior a 3 TB.
Puede realizar los siguientes cambios para mejorar el proceso de migración de una base de datos a
Amazon Aurora.
Important
Asegúrese de realizar estas actualizaciones en una instancia de base de datos nueva restaurada
a partir de una instantánea de una base de datos de producción, en lugar de a partir de una
instancia de producción. A continuación, puede migrar los datos de la instantánea de la nueva
instancia de base de datos al clúster de base de datos de Amazon Aurora para evitar las
interrupciones de servicio en la base de datos de producción.
Tablas MyISAM Amazon Aurora solo admite tablas InnoDB. Si tiene tablas MyISAM
en la base de datos, deberá convertirlas antes de migrarlas a Amazon
Aurora. El proceso de conversión requiere más espacio para la
conversión de MyISAM a InnoDB durante el procedimiento de
migración.
Tablas comprimidas Amazon Aurora no admite tablas comprimidas (es decir, tablas creadas
con ROW_FORMAT=COMPRESSED).
Puede utilizar el siguiente script SQL en su instancia de base de datos MySQL existente para obtener una
lista de las tablas MyISAM o comprimidas en su base de datos.
-- This script examines a MySQL database for conditions that will block
-- migrating the database into Amazon's Aurora DB.
Version 1/1/2016
122
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
-- It needs to be run from an account that has read permission for the
-- INFORMATION_SCHEMA database.
El script obtiene un resultado similar al del siguiente ejemplo. El ejemplo muestra dos tablas que deben
convertirse de MyISAM a InnoDB. El resultado también incluye el tamaño aproximado de cada tabla en
megabytes (MB).
+---------------------------------+------------------+
| ==> MyISAM or Compressed Tables | Approx size (MB) |
+---------------------------------+------------------+
| test.name_table | 2102.25 |
| test.my_table | 65.25 |
+---------------------------------+------------------+
2 rows in set (0.01 sec)
Version 1/1/2016
123
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
Migración de una instantánea de base de datos mediante la
consola
Puede migrar una instantánea de base de datos de una instancia de base de datos de Amazon RDS
MySQL para crear un clúster de base de datos de Aurora. El nuevo clúster de base de datos se rellenará
con los datos de la instancia de base de datos de Amazon RDS MySQL original. La instantánea de base
de datos debe haberse creado a partir de una instancia de base de datos de Amazon RDS que ejecute
MySQL 5.6 y no debe estar cifrada. Para obtener más información acerca de cómo crear una instantánea
de base de datos, consulte la documentación de Amazon RDS.
Si la instantánea de base de datos no se encuentra en la región de AWS en la que desea ubicar sus
datos, utilice la consola de Amazon RDS para copiar la instantánea de base de datos en dicha región.
Para obtener más información acerca de cómo copiar una instantánea de base de datos, consulte la
documentación de Amazon RDS.
Al migrar la instantánea de base de datos mediante la consola, esta realiza las acciones necesarias para
crear tanto el clúster de base de datos como la instancia principal.
También puede elegir que el nuevo clúster de base de datos de Aurora se cifre "en reposo" mediante una
clave de cifrado de AWS Key Management Service (AWS KMS). Esta opción solo está disponible para las
instantáneas de base de datos no cifradas.
Para migrar una instantánea de base de datos MySQL 5.6 mediante la consola
1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en https://
console.aws.amazon.com/rds/.
2. Elija Snapshots.
3. En la página Snapshots, seleccione la instantánea que desea migrar a un clúster de base de datos de
Aurora.
4. Elija Migrate Database.
Version 1/1/2016
124
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
• DB Instance Class: seleccione una clase de instancia de base de datos que tenga el
almacenamiento y la capacidad necesarias para la base de datos, por ejemplo db.r3.large.
Los volúmenes de clúster de Aurora aumentarán automáticamente a medida que se incremente
la cantidad de datos en la base de datos, hasta un tamaño máximo de 64 terabytes (TB). Por lo
tanto, solo tiene que seleccionar una clase de instancia de base de datos que se adapte a sus
necesidades de almacenamiento actual.
• DB Instance Identifier: escriba un nombre para el clúster de base de datos que sea exclusivo para
su cuenta en la región que ha seleccionado. Este identificador se utiliza en las direcciones de punto
de enlace para las instancias del clúster de base de datos. Puede optar por añadir un nombre
inteligente, como incluir la región y el motor de base de datos que ha seleccionado, por ejemplo
aurora-cluster1.
De lo contrario, puede solicitar a Amazon RDS que cree una VPC seleccionando Create a new VPC.
Version 1/1/2016
125
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
• Subnet Group: si dispone de un grupo de subredes, puede utilizar dicho grupo con su clúster de
base de datos de Amazon Aurora seleccionando el identificador del grupo de subredes, por ejemplo
gs-subnet-group1.
De lo contrario, puede solicitar a Amazon RDS que cree un grupo de subredes seleccionando
Create a new subnet group.
• Publicly Accessible: seleccione No para especificar que solo pueden acceder a las instancias de su
clúster de base de datos los recursos de dentro de su VPC. Seleccione Yes para especificar que los
recursos de la red pública pueden acceder a las instancias de su clúster de base de datos. El valor
predeterminado es Yes.
Note
La opción Auto Minor Version Upgrade solo se aplica a las actualizaciones de versiones de motor
menores de MySQL para su clúster de base de datos de Amazon Aurora. No se aplica a los parches
periódicos que se utilizan para mantener la estabilidad del sistema.
Version 1/1/2016
126
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
Version 1/1/2016
127
AWS Database Migration Service
Guía de la migración paso a paso
Migración de una instantánea de base
de datos de RDS MySQL a Aurora
6. Elija Migrate para migrar la instantánea de base de datos.
7. Elija Instances y, a continuación, seleccione el icono de flecha para mostrar la información detallada
del clúster de base de datos y supervisar el progreso de la migración. En la página de información
detallada, podrá encontrar el punto de enlace del clúster que se utiliza para conectar a la instancia
principal del clúster de base de datos. Para obtener más información sobre la conexión a un clúster de
base de datos de Amazon Aurora, consulte la documentación de Amazon RDS.
Version 1/1/2016
128
AWS Database Migration Service
Guía de la migración paso a paso
Historial de revisión
En la siguiente tabla, se describen los cambios importantes que se han realizado en la documentación
desde la última versión de la guía de la migración paso a paso de AWS Database Migration Service.
Version 1/1/2016
129