|
| 1 | +--- |
| 2 | +title: Azure Database for MySQL Mirroring in Microsoft Fabric |
| 3 | +description: Learn about Mirroring in Microsoft Fabric for Azure Database for MySQL instances. |
| 4 | +author: VandhanaMehta |
| 5 | +ms.author: vamehta |
| 6 | +ms.reviewer: jingwang, maghan |
| 7 | +ms.date: 03/18/2026 |
| 8 | +ms.service: azure-database-mysql |
| 9 | +ms.topic: concept-article |
| 10 | +ai-usage: ai-assisted |
| 11 | +# customer intent: As a database administrator, I want to learn how to use Fabric Mirroring for my Azure Database for MySQL instances. |
| 12 | +--- |
| 13 | + |
| 14 | +# Azure Database for MySQL mirroring in Microsoft Fabric |
| 15 | + |
| 16 | +[Mirroring in Fabric](/fabric/database/mirrored-database/azure-database-mysql) (now generally available) provides an easy experience to avoid complex ETL (Extract Transform Load) and integrate your existing Azure Database for MySQL estate with the rest of your data in Microsoft Fabric. You can continuously replicate your existing Azure Database for MySQL directly into Fabric OneLake. Inside Fabric, you can unlock powerful business intelligence, artificial intelligence, Data Engineering, Data Science, and data sharing scenarios. |
| 17 | + |
| 18 | +## Architecture |
| 19 | + |
| 20 | +Fabric mirroring in Azure Database for MySQL is built on concepts like logical replication and Change Data Capture (CDC) design pattern. |
| 21 | + |
| 22 | +Once you establish Fabric mirroring for a database in an Azure Database for MySQL, a MySQL background process creates an initial snapshot for selected tables to be mirrored. It ships the snapshot to a Fabric OneLake landing zone in Parquet format. A Replicator process running in Fabric takes these initial snapshot files and creates Delta tables in the Mirrored database artifact. |
| 23 | + |
| 24 | +The source database captures subsequent changes applied to selected tables. It ships these changes to the OneLake landing zone in batches to be applied to the respective Delta tables in the Mirrored database artifact. |
| 25 | + |
| 26 | +:::image type="content" source="media/fabric-mirroring-mysql/architecture.png" alt-text="Diagram of Fabric Database mirroring architecture."::: |
| 27 | + |
| 28 | +## Prerequisites |
| 29 | + |
| 30 | +Before you set up Fabric mirroring for an Azure Database for MySQL, make sure the following requirements are met: |
| 31 | + |
| 32 | +- **Supported service tiers**: General Purpose and Business-Critical. |
| 33 | +- **Supported MySQL versions**: 8.0 (LTS minor versions only). |
| 34 | +- **Binary log configuration**: `binlog_row_image` must be set to `FULL` or `NOBLOB`. If it's not set to one of these values, modify this setting in the Azure portal for Azure Database for MySQL. Go to **Settings > Server parameters** to make the necessary changes and save them. |
| 35 | +- **User permissions**: A MySQL user account with **SELECT** permissions on all databases and tables selected for mirroring. |
| 36 | +- **Fabric capacity**: An active Microsoft Fabric capacity (or Fabric trial). |
| 37 | + |
| 38 | +## Set up mirroring in Azure Database for MySQL |
| 39 | + |
| 40 | +By using Fabric mirroring in the Azure portal for an Azure Database for MySQL, you can replicate your MySQL databases into Microsoft Fabric. This feature helps you integrate your data seamlessly with other services in Microsoft Fabric, enabling advanced analytics, business intelligence, and data science scenarios. The configuration experience follows a two-step process spanning the Azure portal and the Fabric portal. |
| 41 | + |
| 42 | +### Enable Fabric mirroring in the Azure portal |
| 43 | + |
| 44 | +To enable Fabric mirroring, complete these steps in the Azure portal: |
| 45 | + |
| 46 | +1. Go to your Azure Database for MySQL in the Azure portal. |
| 47 | + |
| 48 | +1. Open **Fabric Mirroring (preview)** under **Settings**. |
| 49 | + |
| 50 | + :::image type="content" source="media/fabric-mirroring-mysql/settings-fabric-mirroring.png" alt-text="Screenshot of the Fabric Mirroring option under Settings in the Azure portal."::: |
| 51 | + |
| 52 | +1. Check that your server meets all the prerequisites. |
| 53 | + |
| 54 | + :::image type="content" source="media/fabric-mirroring-mysql/enable-fabric-mirroring.png" alt-text="Screenshot of the enable message in the Azure portal."::: |
| 55 | + |
| 56 | +1. Select **Enable Fabric Mirroring**. |
| 57 | + |
| 58 | +1. Choose an existing user-assigned managed identity or create a new one. Use this identity to securely write data into OneLake. |
| 59 | + |
| 60 | +1. Save the configuration to enable mirroring. |
| 61 | + |
| 62 | + :::image type="content" source="media/fabric-mirroring-mysql/save-fabric-mirroring.png" alt-text="Screenshot of the Save button to enable Fabric Mirroring in the Azure portal."::: |
| 63 | + |
| 64 | +### Create a mirrored database in Fabric |
| 65 | + |
| 66 | +After you enable Fabric Mirroring in the Azure portal, create the mirrored database artifact in the Fabric portal: |
| 67 | + |
| 68 | +1. Open the [Microsoft Fabric portal](https://app.fabric.microsoft.com/). |
| 69 | + |
| 70 | +1. Select your workspace, or create a new one. |
| 71 | + |
| 72 | +1. Select **New item** > **Mirrored Azure Database for MySQL**. |
| 73 | + |
| 74 | +1. Select your Azure Database for MySQL connection or create a new one by providing your server name and the user credentials with the required permissions. |
| 75 | + |
| 76 | +1. Choose the databases and tables you want to mirror, then select **Mirror database**. |
| 77 | + |
| 78 | +For detailed instructions, see [Configure Microsoft Fabric Mirrored Databases from Azure Database for MySQL](/fabric/mirroring/azure-database-mysql-tutorial). |
| 79 | + |
| 80 | +After you create the mirrored database, Fabric starts the initial data replication and then continues with continuous change replication. You can monitor the replication status and health directly from the mirrored database management view in Fabric. |
| 81 | + |
| 82 | +## Monitor replication |
| 83 | + |
| 84 | +Fabric provides built-in monitoring for mirrored databases, including replication health and status, rows replicated per table, and the ability to start and stop replication from the Fabric portal. |
| 85 | + |
| 86 | +For more information, see [Monitor Mirrored Database Replication - Microsoft Fabric](/fabric/mirroring/monitor). |
| 87 | + |
| 88 | +## Data availability and consumption |
| 89 | + |
| 90 | +After replication finishes, all tables are available in the SQL Analytics endpoint. For guidance on how to use this data in near-real time for analytics, see [Explore Data in Your Mirrored Database Using Microsoft Fabric - Microsoft Fabric](/fabric/mirroring/explore). |
| 91 | + |
| 92 | +## Recommended MySQL parameters |
| 93 | + |
| 94 | +| **Parameter** | **Required Value** | **Notes** | |
| 95 | +| --- | --- | --- | |
| 96 | +| log_bin | ON | Required for binlog replication | |
| 97 | +| binlog_row_image | FULL or NOBLOB | MINIMAL unsupported | |
| 98 | +| binlog_format | ROW | Required for row-level replication | |
| 99 | +| innodb_flush_log_at_trx_commit | 1 | Recommended for durability | |
| 100 | + |
| 101 | +## Related content |
| 102 | + |
| 103 | +- [Microsoft Fabric Mirrored Databases From Azure Database for MySQL](/fabric/mirroring/azure-database-mysql) |
| 104 | +- [Configure Microsoft Fabric Mirrored Databases from Azure Database for MySQL](/fabric/mirroring/azure-database-mysql-tutorial) |
| 105 | +- [Limitations of Fabric Mirrored Databases From Azure Database for MySQL](/fabric/mirroring/azure-database-mysql-limitations) |
| 106 | +- [Troubleshoot Fabric Mirrored Databases From Azure Database for MySQL](/fabric/mirroring/azure-database-mysql-troubleshoot) |
0 commit comments