MySQL 8 cambió el conjunto de caracteres predeterminado a utf8mb4. Pero algunos clientes no conocen este conjunto de caracteres. Por lo tanto, cuando el servidor informa su conjunto de caracteres predeterminado al cliente y el cliente no sabe qué significa el servidor, arroja este error.
Consulte también https://bugs.mysql.com/bug.php?id=71606
Ese error es contra MySQL Connector/C++, por lo que afecta más que solo PHP.
De acuerdo, lo hice funcionar cambiando el juego de caracteres a utf8, para que sea compatible con clientes no actualizados. Agregué esto a /etc/my.cnf y reinicié mysqld:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
character-set-server = utf8
Encontré esta configuración en una respuesta de 2010:¿Cambiar el conjunto de caracteres predeterminado de MySQL a UTF-8 en my.cnf?