Si vous utilisez utf8mb4 et que vous avez des index uniques sur des colonnes varchar de plus de 191 caractères, vous devrez activer innodb_large_prefix pour autoriser des colonnes plus grandes dans les index, car utf8mb4 nécessite plus d'espace de stockage que utf8 ou latin1 . Ajoutez ce qui suit à votre fichier my.cnf.
[mysqld]
innodb_file_format=barracuda
innodb_file_per_table=1
innodb_large_prefix=1
init_connect='SET collation_connection = utf8mb4_unicode_ci; SET NAMES utf8mb4'
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
Plus d'informations sur le pourquoi et l'avenir de la Documentation MySQL 5.7 :
Pour résumer, la limite n'est là que pour la compatibilité et sera augmentée dans les futures versions.