<p>Raised when a BINLOG statement includes any event type other than Format_description_log_event or row events.</p>
<p>MySQL Error 1730: Only Format_description_log_event and row events are allowed in BINLOG statements. The server halts the statement when another event type is present. Clean the BINLOG script to include only row events or set binlog_format to ROW to resolve the issue.</p>
Only Format_description_log_event and row events are
MySQL throws Error 1730 with condition name ER_ONLY_FD_AND_RBR_EVENTS_ALLOWED_IN_BINLOG_STATEMENT when a BINLOG statement tries to inject an event type that is not permitted. Only Format_description_log_event and row based replication events are accepted; supplying any other event triggers the error.
The error appears during point-in-time recovery, replication debugging, or manual replay of binary log events when the BINLOG statement includes disallowed events such as Query_log_event or Intvar_log_event.
Leaving the error unresolved blocks the replay of binlog data, prevents replicas from catching up, and may jeopardize disaster-recovery objectives. Quick remediation restores replication flow and ensures data consistency.
You will see Error 1730 if binlog_format is set to ROW but the BINLOG statement includes statement-based events, or when binlog events are captured from a different MySQL version that allowed more event types.
Rewrite the BINLOG statement so that it contains only Format_description_log_event followed by row events, or use mysqlbinlog to strip unsupported event types before piping the output into mysql.
During migration, ensure you regenerate the binary log with --base64-output=DECODE-ROWS so mysqlbinlog emits row events, then replay. For replication lag, verify that the relay log on the replica does not contain disallowed events.
Keep binlog_format consistent across servers, avoid mixing statement-based and row-based formats, and always use mysqlbinlog options --rewrite-db or --skip-gtids cautiously to prevent foreign events from entering BINLOG statements.
Errors 1236 and 1317 often surface in the same recovery sessions. Resolving Error 1730 first usually eliminates cascading replication errors.
When binlog_format is ROW but older statement-based events are present, the BINLOG command fails.
Dumping logs from a newer MySQL version that introduced new event types and replaying on an older server triggers the error.
Hand-assembled BINLOG scripts that insert Query_log_event lines immediately raise Error 1730.
Using mysqlbinlog without --base64-output=DECODE-ROWS can output statement-based events which are rejected during BINLOG execution.
Appears when a replica cannot locate or read a referenced binlog file.
Indicates a fatal error on the replica, often due to corrupted events.
Occurs when replication SQL thread stops because of event parsing errors.
Switching formats mid-stream risks data divergence. Instead regenerate the BINLOG script to contain only row events.
GTID remains intact but the replica halts until the faulty BINLOG statement is corrected.
Upgrading may introduce new allowed events but the server will still reject unsupported ones. Focus on cleaning the BINLOG script.
Galaxy highlights server variables like binlog_format and validates SQL before execution, reducing the chance of injecting unsupported events.