[debian-mysql] Bug#1104533: debian-start: ERROR 1267 (HY000): Illegal mix of collations

Otto Kekäläinen otto at debian.org
Sun May 11 22:11:44 BST 2025


Control: tags -1 moreinfo

> After upgrading from bookworm to trixie, starting mariadb produces this
> error message in journal:
>
> May 01 18:17:39 back debian-start[148992]: --------------
> May 01 18:17:39 back debian-start[148992]: SELECT count(*) FROM mysql.user WHERE user='root' and password='' and password_expired='N' and plugin in ('', 'mysql_native_password', 'mysql_old_password')
> May 01 18:17:39 back debian-start[148992]: --------------
> May 01 18:17:39 back debian-start[148992]: ERROR 1267 (HY000) at line 1: Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8mb4_uca1400_ai_ci,COERCIBLE) for operation '='
>
> mariadb-server dows start and appears to run fine.
>
> I can also reproduce the error manually with the following query:
>
> MariaDB [(none)]> SELECT * FROM mysql.user where password_expired='N';
> ERROR 1267 (HY000): Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8mb4_uca1400_ai_ci,COERCIBLE) for operation '='
>
> Please let me know if I can provide any more information.

What are the steps to reproduce this?

Both before and after the upgrade when I run these SQL commands I get
the exact same results. I am not able to reproduce the illegal mix of
collations you have.

MariaDB [(none)]> SELECT count(*) FROM mysql.user WHERE user='root'
and password='' and password_expired='N' and plugin in ('',
'mysql_native_password', 'mysql_old_password');
+----------+
| count(*) |
+----------+
|        0 |
+----------+
1 row in set (0.004 sec)

MariaDB [(none)]> SHOW WARNINGS;
Empty set (0.000 sec)

MariaDB [(none)]> SELECT Host,User FROM mysql.user where password_expired='N';
+-----------+-------+
| Host      | User  |
+-----------+-------+
| localhost | root  |
| localhost | mysql |
+-----------+-------+

MariaDB [(none)]> SHOW WARNINGS;
Empty set (0.001 sec)


I followed the exact steps we also have in CI at
https://salsa.debian.org/otto/mariadb-server/-/jobs/7566186 to start a
Bookworm container, install MariaDB, enable Sid and upgrade with
apt-get full-upgrade -qq --yes.

The CI includes running command 'mariadb --table -e "SELECT
host,user,plugin,authentication_string FROM user;" mysql', in addition
to starting with service file, which both should trigger the warning,
but I don't see any warnings in Bookworm CI job, nor in Buster or
Bullseye upgrades either
(https://salsa.debian.org/otto/mariadb-server/-/jobs/7566190,
https://salsa.debian.org/otto/mariadb-server/-/jobs/7566189).



More information about the pkg-mysql-maint mailing list