Share
Generic MySQL Setup Guide

MySQL is the most popular Open Source Relational SQL Database Management System used by small and large businesses. It has a customizable software and works well even with large data sets.

You can ingest data from your MySQL database using Hevo Pipelines and replicate it to a warehouse of your choice.

Source Considerations

  • MySQL does not generate log entries for cascading deletes. So, Hevo cannot capture these deletes for log-based Pipelines.

Limitations

  • Hevo only fetches tables from the MySQL database. It does not fetch other entities such as functions, stored procedures, views, and triggers.

    To fetch views, you can create individual Pipelines in Custom SQL mode. However, some limitations may arise based on the type of data synchronization, the query mode, or the number of Events. Contact Hevo Support for more details.

  • During the historical load, Hevo reads table definitions directly from the MySQL database schema, whereas for incremental updates, Hevo reads from the BinLog. As a result, certain fields, such as nested JSON, are parsed differently during historical and incremental loads. In the Destination tables, nested JSON fields are parsed as a struct or JSON during historical loads, but as a string during incremental loads. This leads to a data type mismatch between the Source and Destination data, causing Events to be sidelined.

    To ensure JSON fields are parsed correctly during the historical load, you can apply transformations to every table containing nested JSON fields. Contact Hevo Support for more details.

  • Hevo Pipelines may fail to process transactions in the BinLog if the size of the transaction exceeds 4GB. This problem is due to a MySQL bug that affects the library used by Hevo to stream Events, resulting in ingestion failures. In such cases, Hevo attempts to restart the ingestion process from the beginning of the transaction, skipping already processed Events. If the problem of transaction processing persists and the BinLog remains stuck, contact Hevo Support for assistance.


See Also


Revision History

Refer to the following table for the list of key updates made to this page:

Date Release Description of Change
Dec-18-2024 NA Updated section, Limitations to add information about Hevo handling transaction failures in the BinLog due to a MySQL bug affecting transactions exceeding 4GB.
Oct-22-2024 NA Updated section, Connect to a Local Database (Optional) as per the latest ngrok and Hevo UI.
Jul-31-2024 NA Updated section, Limitations to add information about Hevo reading table definitions differently during historical and incremental loads.
Apr-29-2024 NA Updated section, Specify MySQL Connection Settings to include more detailed steps.
Mar-18-2024 2.21.2 Updated section, Specify MySQL Connection Settings to add information about the Load all CA certificates option.
Mar-05-2024 2.21 Added the Data Replication section.
Nov-03-2023 NA Renamed section, Object Settings to Object and Query Mode Settings.
Oct-27-2023 NA - Added subsection, Create a database user.
- Updated subsection, Grant privileges to the user with the latest steps.
Jul-25-2023 NA Updated section, Enable BinLog replication for more clarity.
Jun-26-2023 NA Added section, Source Considerations.
Apr-21-2023 NA Updated section, Specify MySQL Connection Settings to add a note to inform users that all loaded Events are billable for Custom SQL mode-based Pipelines.
Mar-09-2023 2.09 Updated section, Specify MySQL Connection Settings to mention about SEE MORE in the Select an Ingestion Mode section.
Dec-19-2022 2.04 Updated section, Specify MySQL Connection Settings to add information that you must specify all fields to create a Pipeline.
Dec-07-2022 2.03 Updated section, Specify MySQL Connection Settings to mention about including skipped objects post-Pipeline creation.
Dec-07-2022 2.03 Updated section, Specify MySQL Connection Settings to mention about the connectivity checker.
Oct-13-2022 1.99 Updated section, Specify MySQL Connection Settings to reflect the latest UI changes.
Apr-21-2022 1.86 Updated section, Specify MySQL Connection Settings.
Aug-09-2021 NA Added a note in Step 3 of section, Enable BinLog replication.
Jul-26-2021 1.68 Added a note for the Database Host field.
Jul-12-2021 1.67 Added sections:
- Specify MySQL Connection Settings and
- Connecting to a Local Database.
Last updated on Dec 18, 2024

Tell us what went wrong

Skip to the section