Edit

Share via


Troubleshoot Fabric mirrored databases from Azure Database for MySQL (preview)

This article covers troubleshooting steps for mirroring Azure Database for MySQL.

Changes to Fabric capacity or workspace

Changes to the Fabric capacity or workspace can affect mirroring. For more information, review the effects on mirroring from Changes to Fabric capacity.

Cause Result Recommended resolution
Workspace deleted Mirroring stops automatically If mirroring is still active on the Azure Database for MySQL, connect by using a server admin and stop the mirroring replication process through the MySQL administrative tools or by disabling the mirroring configuration in the Azure portal.

SQL queries for troubleshooting

If you're experiencing mirroring problems, perform the following server level checks using system views and functions to validate configuration.

Check if the following server parameters are set to the required values:

Server Parameter Required Value
binlog_row_image noblob/full
gtid_mode OFF
aad_auth_only OFF

Execute the following query to check if there's any error:

SELECT * FROM fabric_info.error_logs;

Review the output for any errors or warnings in the replication status. Contact support if troubleshooting is required.

Status Code Status Type Description
PipelineNullContext ERROR The Fabric mirroring process failed to start. Recommended Action - Restart Fabric mirroring. If the issue persists after restart, contact support.
ValidationNullModel ERROR Invalid or missing mirroring configuration detected. Recommended Action - Contact Support.
ValidationInvalidModelType ERROR Invalid or missing mirroring configuration detected. Recommended Action - Contact Support.
ValidationNullTargetConnectionInfo ERROR Target connection information is missing. Recommended Action - Contact Support.
MetadataBulkLoadStatusMissing ERROR Verify bulk load completion and restart Fabric mirroring. If the issue persists, contact support.
MetadataCdcStatusMissing ERROR Verify change data completion and restart Fabric mirroring. If the issue persists, contact support.
CdcCrashRecoveryFailed ERROR Contact Support.
UploadFileError ERROR Contact Support.
StorageLandingZoneNull ERROR Contact Support.
StorageLandingZoneInvalid ERROR Mirroring configuration error. Recommended Action - Contact Support.
BinlogDisabled ERROR Enable log_bin=ON and binlog_format=ROW, then restart Fabric mirroring.
BinlogLocklessHandled ERROR Contact Support.
BinlogLocklessUnhandled ERROR Contact Support.
PrepareServerUnhandled ERROR Contact Support.
PipelineStepFailed ERROR Contact Support.
InternalContainerNameInvalid ERROR Contact Support.
CdcPipelineError ERROR Contact Support.
ManagerStartFailure ERROR Restart Fabric mirroring. If the issue persists, contact support.
ManagerStopFailure ERROR Restart Fabric mirroring. If the issue persists, contact support.
BulkLoadStepFailed ERROR Contact Support.
ValidationNullDbName ERROR No database name provided for mirroring. Provide a valid database name and retry.
ValidationNullSelectedTables ERROR No tables selected for mirroring. Select one or more tables and restart Fabric mirroring.
MetadataTableMissing ERROR Restart Fabric mirroring. If the issue persists, contact support.
ValidationTableNotFound ERROR Selected table not found on the source server. If the issue persists, contact support.
ValidationNullTableName ERROR Make sure you selected the tables for mounting. If the issue persists after restart, contact support.
ValidationNullSelectedDatabases ERROR No databases selected for mirroring. Recommended Action - Select one database and start Fabric mirroring again.
CdcRowImageMismatch ERROR Source schema (DDL) change detected; DDL isn't supported.
CdcParquetWriteFailed ERROR Make sure you don't use unsupported data types. If the issue persists, contact support.

Supported data types

Only columns with following types are supported:

  • bigint
  • binary
  • bit
  • bool
  • char
  • date
  • datetime
  • decimal
  • double
  • enum
  • float
  • int
  • long
  • mediumint
  • set
  • short
  • smallint
  • time
  • timestamp
  • tinyint
  • varbinary
  • varchar
  • year

In MySQL, time values are stored in the server's time zone. Ensure consistent time zone handling for accurate data representation.

Managed identity

The User Assigned Managed Identity (UAMI) of the Azure Database for MySQL needs to be created and assigned to the MySQL server.

UAMI permissions

Don't remove Azure Database for MySQL User Assigned Managed Identity (UAMI) contributor permissions on the Fabric mirrored database item.

If you remove Azure Database for MySQL UAMI permissions or permissions aren't set up correctly, disable and re-enable mirroring from the Azure portal and set up the configuration from the Fabric portal again.