web-dev-qa-db-ja.com

異なるMySQL環境でのユーザー名の長さの制限

私はローカル環境にプロジェクトをセットアップしており、その初期スクリプトには、データベースを作成するためのいくつかのSQLコマンドがあります。

  • _create database 'db-name' default character set utf8;_

ユーザーアカウントのgrant特権に:

  • _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'_

grantコマンドを実行しようとすると、次のようになります。

  • ERROR 1470 (HY000): String 'user-name-to-long-for-user-name' is too long for user name (should be no longer than 16)

なぜこれが起こっているのか理解できませんが、同じスクリプトが別の環境で正常に実行された後、それが実行されました。

私が使用しているサーバーのバージョンは5.6.20 MySQL Community Server(GPL)です。

この状況は、特定のMySQLバージョンなどに関連していますか?

8
mchar

MySQLでのユーザー名の最大長はバージョンによって異なります マニュアルに記載されているように

MySQLユーザー名の長さは、最大32文字です(MySQL 5.7.8より前は16文字)。

13
Andriy M