Hi, Erik! you can run mysql_fix_privilege_tables.sql manually. Like with mysql -uroot -p -vvv < mysql_fix_privilege_tables.sql Presuming FreeBSD installs this file somewhere. If it doesn't, you can extract it from mysql_upgrade with strings, I suppose. On Jul 16, Erik Cederstrand wrote:
Hi,
I'm trying to upgrade a MariaDB 10.2 server to 10.4.6 on FreeBSD.
When running the mysql_update command, it dies with:
$ mysql_upgrade Phase 1/7: Checking and upgrading mysql database Processing databases mysql ... mysql.transaction_registry OK Phase 2/7: Installing used storage engines... Skipped Phase 3/7: Fixing views mysql.user OK Phase 4/7: Running 'mysql_fix_privilege_tables' ERROR 1071 (42000) at line 437: Specified key was too long; max key length is 1000 bytes FATAL ERROR: Upgrade failed
Adding verbose option does not give more hints, and the failing SQL statement doesn't seem to be logged with full query logging turned on.
How do I debug this? I can't even see which table or column it's complaining about. I don't remember fiddling with collation or character sets on system tables.
Kind regards, Erik
Regards, Sergei VP of MariaDB Server Engineering and security@mariadb.org