Puedes transmitir actualizaciones de captura de datos modificados (CDC) desde una base de datos de Amazon RDS para MySQL a destinos compatibles, como BigQuery o Cloud Storage, con Datastream. Para preparar tu instancia de origen, configura un grupo de parámetros y una réplica de lectura opcional, establece el período de retención de registros binarios y crea un usuario de Datastream.
Crea un grupo de parámetros
Inicia el panel de Amazon RDS.
En el panel lateral de navegación, haz clic en Parameter Groups.
Haz clic en Create Parameter Group. Aparecerá la página Create Parameter Group.
Selecciona la familia de bases de datos que coincida con tu base de datos, proporciona un nombre y una descripción para el grupo de parámetros.
Haz clic en Crear.
Selecciona la casilla de verificación a la izquierda del grupo de parámetros que acabas de crear.
En Parameter group actions, haz clic en Edit.
Usa la siguiente tabla para configurar los parámetros de tu grupo.
Para la replicación basada en binlog , haz lo siguiente:
Parámetro Valor binlog_format ROWlog_bin_use_v1_row_events 1read_only 0net_read_timeout 3600net_write_timeout 3600wait_timeout 86400Para la replicación basada en GTID , haz lo siguiente:
Parámetro Valor binlog_format ROWlog_bin_use_v1_row_events 1read_only 0net_read_timeout 3600net_write_timeout 3600wait_timeout 86400expire-logs-days 7binlog_row_image FULLmax_allowed_packet 1G(valor recomendado)log-replica-updates 1enforce-gtid-consistency ONgtid_mode
Solo puedes configurar este parámetro comoONONdespués de configurarenforce-gtid-consistencycomoON. En general,gtid_modepuede tener los siguientes valores:OFFOFF_PERMISSIVEON_PERMISSIVEON
gtid_modede a un paso por vez. Por ejemplo, si el modo actual está configurado comoOFF, haz lo siguiente:- Cambia el parámetro a
OFF_PERMISSIVE. - Cambia el parámetro a
ON_PERMISSIVE. - Cambia el parámetro a
ON.
Haz clic en Guardar cambios.
Crea una réplica de lectura
Inicia el panel de Amazon RDS.
En el panel lateral de navegación, haz clic en Databases.
Selecciona la instancia principal de la base de datos a la que quieres que se conecte DataStream.
Expande el botón Acciones y haz clic en Crear réplica de lectura.
Configura la réplica de lectura según sea necesario.
Haz clic en Crear réplica de lectura.
Configura la base de datos de origen y la réplica de lectura
Si elegiste replicar directamente desde el servidor principal, configura la base de datos de origen con los siguientes pasos.
Si elegiste usar una réplica de lectura, configura la base de datos de origen y la réplica de lectura con los siguientes pasos.
Inicia el panel de Amazon RDS.
En el panel lateral de navegación, haz clic en Databases.
Selecciona la instancia que deseas configurar y, luego, haz clic en Modify.
Ve a la sección Additional configuration.
Selecciona el grupo de parámetros que creaste.
Establece el Backup retention period en 7 días.
Haga clic en Continuar.
En Scheduling of modifications, selecciona Apply immediately.
Verifica que el grupo de parámetros esté asignado a la instancia de la base de datos
Inicia el panel de Amazon RDS.
En el panel lateral de navegación, haz clic en Databases y, luego, selecciona tu instancia de base de datos.
Haz clic en la pestaña Configurations.
Verifica que veas el grupo de parámetros que creaste, y que su estado sea pending-reboot.
Reinicia la instancia de base de datos para completar la configuración. Para reiniciar la instancia, haz lo siguiente:
- En el panel lateral de navegación, haz clic en Instances.
- Selecciona tu instancia de base de datos.
- En el menú Instance Actions, selecciona Reboot.
Configura el período de retención de registros binarios
Ingresa el siguiente comando de MySQL:
call mysql.rds_set_configuration('binlog retention hours', 168);
Reinicia el servidor MySQL para que se apliquen los cambios.
Crea un usuario de Datastream
Crea un usuario de Datastream:
CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
Otórgale los siguientes privilegios:
GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%'; GRANT EXECUTE ON PROCEDURE mysql.rds_show_configuration TO 'datastream'@'%'; FLUSH PRIVILEGES;
¿Qué sigue?
- Obtén más información sobre cómo funciona Datastream con las fuentes de MySQL.