The following table describes the maximum length for each type of identifier.
|Identifier Type||Maximum Length (characters)|
|Database||64 (includes NDB Cluster 8.0.18 and later)|
|Table||64 (includes NDB Cluster 8.0.18 and later)|
|Log File Group||64|
|Alias||256 (see exception following table)|
|Compound Statement Label||16|
Aliases for column names in
VIEW statements are checked against the maximum column
length of 64 characters (not the maximum alias length of 256
For constraint definitions that include no constraint name, the
server internally generates a name derived from the associated
table name. For example, internally generated foreign key and
CHECK constraint names consist of the table
and a number. If the table name is close to the length limit for
constraint names, the additional characters required for the
constraint name may cause that name to exceed the limit,
resulting in an error.
Identifiers are stored using Unicode (UTF-8). This applies to
identifiers in table definitions and to identifiers stored in
the grant tables in the
mysql database. The
sizes of the identifier string columns in the grant tables are
measured in characters. You can use multibyte characters without
reducing the number of characters permitted for values stored in
Prior to NDB 8.0.18, NDB Cluster imposed a maximum length of 63 characters for names of databases and tables. As of NDB 8.0.18, this limitation is removed. See Section 18.104.22.168, “Previous NDB Cluster Issues Resolved in NDB Cluster 8.0”.
Values such as user name and host names in MySQL account names are strings rather than identifiers. For information about the maximum length of such values as stored in grant tables, see Grant Table Scope Column Properties.