I was moving a Zabbix database from a host to another, with the same MariaDB version (10.3.32).
Unfortunately, when restoring the just produced dump, the process would fail with the error:
Row size too large (> 8126)
The most comprehensive explanation on the error is on the MariaDB KB itself. But my tables were in DYNAMIC format already, so it didn’t apply. It happened to me in the past on a different restore, and enlarging some VARCHAR columns actually fixed. But I didn’t want to mess with Zabbix DB so I tried another alternative.
Even looking on the Zabbix forum didn’t take me to a solution. There were several posts and links, almost all related to fixed upgrade issues.
The most easy workaround is to disable InnoDB strict mode, but it’s also the less secure. Sadly I didn’t find a better solution, so I imported the dump temporary disabling it.
echo "SET SESSION innodb_strict_mode=OFF;" | cat - backup_zabbix-12.sql | mysql zabbixserver