J'installe un projet dans mon environnement local et à son script initial sont quelques commandes SQL pour créer la base de données:
create database 'db-name' default character set utf8;
et aux privilèges grant
pour le compte utilisateur:
grant select, insert, update, delete, create, drop, index, alter on 'db-name'.* to 'user-name-too-long-for-user-name'@'localhost' identified by 'user-name-pass'
Lorsque j'essaie d'exécuter la commande grant
, j'obtiens ceci:
ERROR 1470 (HY000): String 'user-name-to-long-for-user-name' is too long for user name (should be no longer than 16)
et je ne peux pas comprendre pourquoi cela se produit alors que ce même script a réussi à s'exécuter dans un autre environnement avant de venir au mien.
La version du serveur que j'utilise est 5.6.20 MySQL Community Server (GPL).
Cette situation est-elle liée à une certaine version de MySQL ou à autre chose?
La longueur maximale d'un nom d'utilisateur dans MySQL dépend de la version, comme indiqué dans le manuel :
Les noms d'utilisateur MySQL peuvent contenir jusqu'à 32 caractères (16 caractères avant MySQL 5.7.8).