Compartir a través de


Adición de un origen CDC de base de datos MySQL a una secuencia de eventos (versión preliminar)

Nota:

Este artículo contiene referencias al término SLAVE, un término que Microsoft ya no usa. Cuando se elimine el término del software, se eliminará también de este artículo.

En este artículo se muestra cómo agregar un origen de captura de datos modificados de Azure Database for MySQL a una secuencia de eventos. El conector de origen de captura de datos modificados (CDC) de base de datos de Azure MySQL para flujos de eventos de Microsoft Fabric permite capturar una instantánea de los datos actuales en una base de datos de Azure Database for MySQL.

Puede especificar las tablas que se van a supervisar y Eventstream registra los cambios futuros de nivel de fila en las tablas. Una vez capturados los cambios en el flujo de eventos, puede procesar estos datos de CDC en tiempo real y enviarlos a diferentes destinos en Fabric para su posterior procesamiento o análisis.

Importante

Las funcionalidades mejoradas de flujos de eventos de Fabric se encuentran actualmente en versión preliminar.

Nota:

Este origen no se admite en las siguientes regiones de la capacidad de área de trabajo: Oeste de EE. UU. 3, Oeste de Suiza.

Requisitos previos

  • Acceda al área de trabajo Premium de Fabric con los permisos Colaborador o superior.
  • Acceso a una instancia de Azure Database for MySQL con servidor flexible.
  • La base de datos de MySQL debe ser de acceso público y no estar detrás de un firewall o protegida en una red virtual.

Nota:

El número máximo de orígenes y destinos para una secuencia de eventos es 11.

Instalación de MySQL DB

El conector usa el conector Debezium MySQL para capturar los cambios en la base de datos de Azure Database for MySQL. Debe definir un usuario de MySQL con los privilegios adecuados en todas las bases de datos en las que el Conector de mensajería puede capturar los cambios. Puede usar directamente el usuario administrador para conectarse a la base de datos que normalmente ya tiene los privilegios adecuados como se indica a continuación. o puede seguir estos pasos para crear un nuevo usuario:

Nota:

La nueva cuenta de usuario o administrador y la contraseña correspondiente se usarán para conectarse a la base de datos más adelante dentro de Eventstream.

  1. En el símbolo del sistema mysql, cree el usuario de MySQL:

    mysql> CREATE USER 'user'@'%' IDENTIFIED BY 'password';
    
  2. Conceda los privilegios necesarios al usuario:

    mysql> GRANT SELECT, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'%';
    
  3. Finalice los permisos del usuario:

    mysql> FLUSH PRIVILEGES;
    

Para confirmar si el usuario o el administrador tiene concedidos los privilegios necesarios, ejecute el siguiente comando y, a continuación, se deben mostrar los privilegios necesarios en el paso 2 anterior.

SHOW GRANTS FOR user;

Para obtener más información sobre cómo conceder los permisos necesarios al usuario, consulte Conector Debezium for MySQL :: Documentación de Debezium.

Habilitación del registro binario

Debe habilitar el registro binario para la replicación de MySQL. Los registros binarios registran las actualizaciones de transacciones de las herramientas de replicación para propagar los cambios.

  1. En la página de Azure Portal para su cuenta de Azure Database for MySQL, seleccione Parámetros del servidor en Configuración en la navegación de la izquierda.

  2. En la página Parámetros del servidor, configure las siguientes propiedades y, a continuación, seleccione Guardar.

    • Para binlog_row_image, seleccione completo.

    • Para binlog_expire_logs_seconds, establezca el número de segundos que espera el servicio antes de purgar el archivo de registro binario. Establezca el valor para que coincida con las necesidades de su entorno, por ejemplo 86400.

    Captura de pantalla de la configuración de registro binario para la replicación en Parámetros del servidor.

Adición de Azure MySQL DB (CDC) como origen

  1. En Inteligencia en tiempo real de Fabric, seleccione Eventstream para crear un flujo de eventos. Asegúrese de que la opción Funcionalidades mejoradas (versión preliminar) esté habilitada.

    Una captura de pantalla de la creación de un nuevo Eventstream.

  2. En la siguiente pantalla, seleccione Agregar origen externo.

    Una captura de pantalla de la selección de adición de un origen externo.

Configuración y conexión a Azure MySQL DB (CDC)

  1. En la pantalla Seleccionar un origen de datos, seleccione Azure MySQL DB (CDC) como origen de datos.

    Captura de pantalla de la selección de Azure MySQL DB (CDC).

  2. En la pantalla Conectar, en Conexión, seleccione Nueva conexión para crear una conexión en la nube.

  3. Escriba la siguiente Configuración de la conexión y Credenciales de conexión para la base de datos de Azure MySQL y, a continuación, seleccione Conectar.

    • Servidor: la dirección del servidor de la base de datos de Azure Database for MySQL, por ejemplo my-mysql-server.mysql.database.azure.com.
    • Base de datos: el nombre de la base de datos, por ejemplo my_database.
    • Nombre de conexión: generado automáticamente o puede escribir un nombre nuevo para esta conexión.
    • Nombre de usuario y contraseña: escriba las credenciales de la base de datos de Azure Database for MySQL. Asegúrese de escribir la cuenta de administrador del servidor o la cuenta de usuario creada con los privilegios necesarios concedidos.

    Captura de pantalla de la configuración de conexión para Azure MySQL DB (CDC).

  4. Escriba la siguiente información para configurar el origen de datos CDC de Azure MySQL DB y, a continuación, seleccione Siguiente.

    • Tablas: escriba una lista de nombres de tabla separados por comas. Cada nombre de tabla debe seguir el formato <database name>.<table name>, por ejemplo my_database.users.
    • Id. de servidor: escriba un valor único para cada servidor y cliente de replicación en el clúster de MySQL. El valor predeterminado es 1000.
    • Puerto: deje el valor predeterminado sin cambios.

    Captura de pantalla de la selección de tablas, id. de servidor y puerto para la conexión de Azure MySQL DB (CDC).

    Nota:

    Establezca un identificador de servidor diferente para cada lector. Cada cliente de base de datos MySQL para leer el registro binario debe tener un identificador único, denominado Id. de servidor. MySQL Server usa este identificador para mantener la conexión de red y la posición de registro binario. Los distintos trabajos que comparten el mismo identificador de servidor pueden dar lugar a la lectura desde la posición de registro binario incorrecta. Por lo tanto, se recomienda establecer un identificador de servidor diferente para cada lector.

  5. Después de revisar el resumen del origen CDC de Azure MySQL DB, seleccione Agregar para completar la configuración.

Verá el origen de Azure MySQL DB (CDC) agregado al flujo de eventos en modo de edición.

Captura de pantalla del origen CDC de Azure MySQL DB agregado en modo de edición con el botón Publicar resaltado.

Seleccione Publicar para publicar los cambios y empezar a transmitir datos CDC de Azure MySQL DB a la secuencia de eventos.

Captura de pantalla de la secuencia de eventos publicada con el origen CDC de Azure MySQL DB en Live View.

Otros conectores: