Replication from MySQL 5.0 to MariaDB 10.2.8 - Unknown system variable 'binlog_checksum', Internal MariaDB error code: 1193 We are finally upgrading our MySQL 5.0.90 environment to MariaDB, and we would like to enable replication from MySQL 5.0 to MariaDB 10.2.8 and then cutover thus providing minimal downtime. I tried this originally with MariaDB 10.1.18 and it worked fine. MariaDB 10.2.8 became GA so we moved our upgrade process to that version. Now when I try to begin replication I get the following error in the MariaDB mysqld.err log:

Unknown system variable 'binlog_checksum', Internal MariaDB error code: 1193

When I execute 'show slave status' I see the following:

Slave_IO_Running: No
Slave_SQL_Running: Yes

Last_IO_Errno: 1595
Last_IO_Error: Relay log write failure: could not queue event from master

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it


I've tried to do some research on this but have been unable to resolve the problem.

Here is the entire section of the log where replication is starting. 

2017-11-20  8:26:43 140154253575936 [Note] Slave SQL thread initialized, starting replication in log 'mysql-bin.002735' at position 98, relay log './mysqld-relay-bin.000001' position: 4
2017-11-20  8:26:43 140154252973824 [Note] Slave I/O thread: connected to master 'repl@scvm50.dev.ut1.omniture.com:3306',replication started in log 'mysql-bin.002735' at position 98
2017-11-20  8:26:43 140154252973824 [Warning] Slave I/O: Notifying master by SET @master_binlog_checksum= @@global.binlog_checksum failed with error: Unknown system variable 'binlog_checksum', Internal MariaDB error code: 1193
2017-11-20  8:26:43 140154252973824 [ERROR] Slave I/O: Replication event checksum verification failed while reading from network, Internal MariaDB error code: 1743
2017-11-20  8:26:43 140154252973824 [ERROR] Slave I/O: Relay log write failure: could not queue event from master, Internal MariaDB error code: 1595
2017-11-20  8:26:43 140154252973824 [Note] Slave I/O thread exiting, read up to log 'mysql-bin.002735', position 98
I found the solution/workaround. I need to set the variable slave_sql_verify_checksum=0 on the slave (MariaDB 10.2.8). I was trying this by dynamically setting the global variable on the slave but it wasn't working. Then I found bug #MDEV 8505 which indicates that resetting the variable dynamically does not work. Once I set it in the my.cnf and restarted the instance, everything started working as expected. Thankfully this is only a interim solution until we complete the upgrade!