Replicación de datos de HeatWave en Autonomous Data Warehouse

Descubra cómo utilizar OCI GoldenGate para replicar datos de HeatWave en Autonomous Data Warehouse.

Antes de empezar

Para completar correctamente este inicio rápido, debe tener lo siguiente:

  • OCI Bastion, para conectarse a HeatWave, cargar la base de datos de ejemplo y realizar inserciones
  • Una base de datos HeatWave para que sirva como base de datos de origen
  • Una instancia de Autonomous Data Warehouse que sirva como base de datos de destino

Configuración de entorno: HeatWave

Para configurar el entorno para este inicio rápido:
  1. Descargue el script de datos de ejemplo y, a continuación, ejecute el script en la base de datos HeatWave para crear la base de datos y cargar los datos.
  2. Cree un usuario ggadmin con el siguiente script. Recuerde sustituir <ggadmin-password> por una contraseña válida:
    CREATE USER 'ggadmin' IDENTIFIED BY '<ggadmin-password>';
    GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT, CREATE,CREATE VIEW, EVENT, INSERT, UPDATE, DROP,EXECUTE, DELETE ON *.* TO 'ggadmin';
  3. Abra port 3306, a través del cual se puede conectar OCI GoldenGate.
    1. En la consola de Oracle Cloud, busque la subred que utiliza la base de datos HeatWave.
    2. En la lista de seguridad de la subred, cree una regla de entrada para port TCP/3306.
  4. Descargue los scripts del esquema de destino y, a continuación, ejecute los scripts en la instancia de Autonomous Data Warehouse para crear el esquema y las tablas. Puede utilizar la herramienta SQL de Database Actions de Autonomous Data Warehouse para ejecutar los scripts:
    1. En la consola de Oracle Cloud, abra la página de detalles de la base de datos de Autonomous Data Warehouse y, a continuación, haga clic en Database Actions.
    2. En Database Actions, en Desarrollo, haga clic en SQL.
    3. En la herramienta SQL, copie y pegue el script de OCIGGLL_OCIGGS_SETUP_USERS_ADW.sql en la hoja de trabajo de SQL y, a continuación, haga clic en Ejecutar script. Si se realiza correctamente, el separador Salida de script muestra mensajes de confirmación.
    4. Borre la hoja de trabajo de SQL y, a continuación, copie y pegue solo los scripts Crear tabla de OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sql. Los datos se cargarán en una tarea posterior.

      Sugerencia:

      Puede que deba ejecutar cada sentencia Crear tabla por separado para que la herramienta SQL ejecute los scripts correctamente.
    5. Para verificar que las tablas se han creado correctamente, cierre la ventana SQL y vuelva a abrirla. En el separador Navegador, busque el esquema SRC_OCIGGLL y, a continuación, seleccione las tablas en sus respectivas listas desplegables.

Tarea 1: Creación de recursos de OCI GoldenGate

En este ejemplo de inicio rápido se necesitan despliegues y conexiones tanto para el origen como para el destino.
  1. Cree un despliegue para la base de datos HeatWave de origen.
  2. Cree un despliegue para la instancia de Autonomous Data Warehouse de destino.
  3. Cree una conexión a la base de datos HeatWave de origen.
  4. Cree una conexión para la instancia de Autonomous Data Warehouse de destino.
  5. Cree una conexión a GoldenGate y, a continuación, asigne esta conexión al despliegue MySQL de origen.
  6. Asigne la conexión de origen al despliegue de MySQL de origen.
  7. Asigne la conexión de destino al despliegue de Oracle de destino.

Tarea 2: Creación de los Extracts

  1. En la página Despliegues, seleccione el despliegue de MySQL creado en la tarea 1.
  2. En la página de detalles del despliegue, haga clic en Iniciar consola.
  3. Conéctese a la consola de despliegue de MySQL de origen con las credenciales de administrador especificadas al crear el despliegue en la tarea 1.
  4. En el menú de navegación, seleccione Conexiones de base de datos.
  5. Revise las credenciales para la conexión HeatWave. Tome nota del dominio y el alias.
  6. Agregue y ejecute Change Data Capture Extract con los siguientes valores:
    • Para Tipo Extract, seleccione Change Data Capture.
    • En Nombre de proceso, introduzca un nombre para el proceso Extract.
    • En Dominio, seleccione el dominio.
    • En Alias, seleccione el alias.
    • En Extract Nombre de pista, introduzca un nombre para el archivo de pista.
    • En la página Parameter File, agregue lo siguiente:
      TABLE SRC_OCIGGLL.*;
  7. Agregue y ejecute una extracción de carga inicial con los siguientes valores:
    • En Tipo Extract, seleccione Initial Load Extract.
    • En Nombre de proceso, introduzca un nombre.
    • En la página Parameter File, agregue lo siguiente:
      TABLE SRC_OCIGGLL.*;

Tarea 3: Creación de Distribution Path para Initial Load Extract

  1. En la página Despliegues, seleccione el despliegue de Autonomous Database de destino.
  2. En la página de detalles del despliegue, haga clic en Iniciar consola y, a continuación, conéctese como usuario administrador.
  3. Si utiliza el almacén de credenciales de IAM, continúe con el paso Crear Distribution Path. Si utiliza el almacén de credenciales GoldenGate, cree un usuario con el que el origen GoldenGate utilice para conectarse al destino GoldenGate.
    1. En el menú de navegación, haga clic en Administración de usuarios.
    2. Haga clic en Agregar nuevo usuario (icono de más), complete los campos de la siguiente manera y, luego, haga clic en Enviar:
      • En Nombre de usuario, introduzca ggsnet.
      • En Rol, seleccione Operador.
      • Introduzca la contraseña dos veces para su verificación.
  4. En la consola de despliegue de origen PostgreSQL, cree una conexión de ruta para el usuario creado en el paso anterior.
    1. En el menú de navegación, haga clic en Conexiones de ruta.
    2. Haga clic en Agregar conexión de ruta (icono de signo más), complete los campos como se indica a continuación y, después, haga clic en Enviar:
      • En Alias de credencial, introduzca dpuser.
      • En ID de usuario, introduzca ggsnet
      • En Contraseña, introduzca la misma contraseña utilizada en el paso anterior.
  5. Crear Distribution Path.
    1. En la barra de menús del servicio, haga clic en Distribution Service y, a continuación, en Agregar Distribution Path (icono de signo más).
    2. Complete la pantalla Agregar ruta de la siguiente manera:
      • En la página Path Information:
        1. En Nombre de ruta, introduzca un nombre para esta ruta.
        2. Haga clic en Siguiente.
      • En la página Opciones de Origen:
        1. En Source Extract (Origen), deje el campo en blanco.
        2. En Nombre de pista, introduzca el nombre de pista Initial Load Extract (I1).
        3. Haga clic en Siguiente.
      • En la página Opciones de Destino:
        1. En Destino, seleccione wss.
        2. En Host de destino, introduzca la URL de despliegue de destino, sin https:// ni barras inclinadas finales.
        3. En Número de puerto, introduzca 443.
        4. En Nombre de pista, introduzca I1.
        5. En Método de autenticación del destino, seleccione UserID Alias.
        6. En Dominio, introduzca el nombre de dominio creado en el paso anterior.
        7. En Alias, introduzca el alias creado en el paso anterior (dpuser).
        8. Haga clic en Siguiente.
    3. Haga clic en Crear y ejecutar.
    Vuelva a la página Distribution Service, donde puede revisar la ruta creada.
  6. Revise Distribution Path:
    1. Haga clic en Receiver Service.
    2. Consulte los detalles de Distribution Path.

Tarea 4: Adición de un Replicat para Initial Load Extract

  1. En la consola de despliegue de OCI GoldenGate de destino, agregue una tabla de puntos de control.
    1. Abra el menú de navegación y, a continuación, haga clic en Conexiones de base de datos.
    2. Haga clic en Conectar a la base de datos SourceATP.
    3. En el menú de navegación, haga clic en Punto de control.
    4. En la página Punto de Control, haga clic en Agregar Punto de Control (icono de signo más).
    5. En Tabla de puntos de control, introduzca SRCMIRROR_OCIGGLL.CHECKTABLE.
    6. Haga clic en Enviar.

      Sugerencia:

      La pantalla no se refrescará al enviar. Para confirmar que se ha agregado la tabla de puntos de control, introduzca SRCMIRROR_OCIGGLL.CHECKTABLE en el campo de búsqueda y, a continuación, haga clic en Buscar.
  2. Agregue Replicat:
    1. Haga clic en Administrator Service y, a continuación, en Agregar Replicat (icono de signo más).
    2. En la página Agregar Replicat, complete los siguientes campos del formulario y haga clic en Siguiente.
      • Para el tipo de Replicat, seleccione Nonintegrated Replicat.
      • En Nombre de proceso, introduzca un nombre, como RIL.
    3. En la página Opciones de Replicat, complete los siguientes campos del formulario y, a continuación, haga clic en Siguiente:
      • En Nombre, introduzca el nombre de la pista de la tarea 2 (I1).
      • En Dominio, seleccione el dominio para la conexión de Autonomous Database.
      • En Alias, seleccione el alias de la conexión de Autonomous Database.
      • En Tabla de puntos de control, seleccione la tabla de puntos de control que ha creado en el paso 1.
    4. En la página Opciones gestionadas, deje los campos como están y haga clic en Siguiente.
    5. En la página Parámetros de Replicat, agregue la siguiente asignación y, a continuación, haga clic en Crear y ejecutar:
      MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    Vuelva a la página Overview, donde puede revisar los detalles de Replicat.
  3. Seleccione el Replicat (RIL) y vea los Detalles.
  4. Haga clic en Statistics y revise el número de inserciones. Refresque la página.
    • Si el número de inserciones no cambia, significa que se han cargado todos los registros de Initial Load y que puede parar Replicat (RIL).
    • Si el número de inserciones continúa aumentando, siga refrescando la página hasta que todos los registros de la carga inicial se hayan cargado antes de continuar.

Tarea 5: Verificación de la carga inicial

  1. En la consola de Oracle Cloud, abra Database Actions desde la página de detalles de la base de datos de Autonomous Data Warehouse.
  2. En Database Actions, en Desarrollo, haga clic en SQL.
  3. En la herramienta SQL, introduzca cada una de las siguientes sentencias en la hoja de trabajo y haga clic en Ejecutar sentencia:
    SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CITY;
    SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CUSTOMER;
La salida debe devolver los datos que se han cargado en las tablas de la base de datos de destino como resultado de la carga inicial.

Tarea 6: Creación de Distribution Path para Change Data Capture

  1. En la consola de despliegue de origen, haga clic en Distribution Service.
  2. Haga clic en Agregar Distribution Path.
  3. Complete la pantalla Agregar ruta de la siguiente manera:
    1. En la página Path Information:
      1. En Nombre de ruta, introduzca un nombre.
      2. Haga clic en Siguiente.
    2. En la página Opciones de Origen:
      1. En Origen Extract, seleccione Change Data Capture Extract (ECDC)).
      2. En Nombre de pista, seleccione el archivo de pista Change Data Capture (C1).
      3. Haga clic en Siguiente.
    3. En la página Opciones de Destino:
      1. En Destino, seleccione wss.
      2. En Host de Destino, introduzca la URL de la consola de despliegue de destino (puede encontrarla en la página de detalles del despliegue, sin https:// ni barras inclinadas finales.
      3. En Número de puerto, introduzca 443.
      4. En Trail Name, introduzca C1.
      5. En Método de autenticación del destino, seleccione UserID Alias.
      6. En Dominio, introduzca el nombre de dominio.
      7. En Alias, introduzca el alias.
    4. Haga clic en Crear ruta y ejecutar.
  4. En la consola de despliegue de destino, haga clic en Receiver Service y, a continuación, revise el Receiver path creado.

Tarea 7: adición de Replicat para Change Data Capture

  1. Agregue Replicat con los siguientes valores:
    1. En la página Información de Replicat:
      • Para Tipo Replicat, seleccione Coordinated Replicat.
      • En Nombre de proceso, introduzca un nombre, como RCDC.
    2. En la página Opciones de Replicat:
      • En Pista Replicat, introduzca el nombre de la pista de la tarea 2 (C1).
      • En Dominio, seleccione el dominio para la conexión de Autonomous Database.
      • En Alias, introduzca el alias de credencial.
      • En Tabla de puntos de control, seleccione la tabla de puntos de control que ha creado.
    3. En la página Parámetros de Replicat, agregue la siguiente asignación y, a continuación, haga clic en Crear y ejecutar:
      MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
  2. En la página Visión general de Administration Service, seleccione Replicat en Initial Load (RIL) y vea los Detalles.
  3. Haga clic en Statistics y revise el número de inserciones. Refresque la página.
    • Si el número de inserciones no cambia, significa que se han cargado todos los registros de la carga inicial y que puede parar Replicat (RIL).
    • Si el número de inserciones continúa aumentando, siga refrescando la página hasta que todos los registros de la carga inicial se hayan cargado antes de continuar.
  4. Vuelva a la página Visión general del servicio de administración y, a continuación, inicie Coordinated Replicat (RCDC).
  5. Después de iniciar Coordinated Replicat, revise sus Detalles y Estadísticas para ver el número de inserciones.

Tarea 8: Verifique Change Data Capture

Realice actualizaciones en la base de datos HeatWave de origen para verificar la replicación en Autonomous Data Warehouse.
  1. En OCI Bastion, cree una sesión de reenvío de puerto SSH mediante la IP de MySQL y el puerto 3306. Agregue su clave SSH pública.
  2. Conéctese a MySQL en Cloud Shell mediante su clave privada y el puerto 3306.
  3. Después de conectarse correctamente, ejecute el siguiente comando:
    mysqlsh admin@localhost:3306 --sql
  4. Ejecute el siguiente script para realizar inserciones en la base de datos HeatWave:
    use SRC_OCIGGLL;
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
    commit;
  5. En la consola de despliegue MySQL de origen, seleccione el nombre Change Data Capture Extract y, a continuación, haga clic en Statistics. Verifique que SRC_OCIGGLL.SRC_CITY tenga 10 inserciones.

    Note:

    Si Extract no ha capturado ninguna inserción, reinicie Extract.

Tarea 9: Supervisión y mantenimiento de procesos

  1. Supervise el rendimiento.
  2. Gestione los archivos de pista.