Some database objects such as tables and indexes have different
limitations when using the
NDBCLUSTER storage engine:
Identifiers. Database names, table names and attribute names cannot be as long in
NDBtables as when using other table handlers. Attribute names are truncated to 31 characters, and if not unique after truncation give rise to errors. Database names and table names can total a maximum of 122 characters. In other words, the maximum length for an
NDBtable name is 122 characters, less the number of characters in the name of the database of which that table is a part.
Table names containing special characters.
NDBtables whose names contain characters other than letters, numbers, dashes, and underscores and which are created on one SQL node may not be discovered correctly by other SQL nodes. (Bug #31470)
Number of tables and other database objects. The maximum number of tables in a Cluster database in MySQL 5.0 is limited to 1792. The maximum number of all
NDBCLUSTERdatabase objects in a single MySQL Cluster—including databases, tables, and indexes—is limited to 20320.
Attributes per table. The maximum number of attributes (that is, columns and indexes) per table is limited to 128.
Attributes per key. The maximum number of attributes per key is 32.
BIT column storage per table. The maximum combined width for all
BITcolumns used in a given
NDBtable is 4096.
Number of rows per partition. The maximum number of rows that can be stored in a single MySQL Cluster partition varies with the number of replicas times the number of fragments. Since the number of partitions is the same as the number of data nodes in the cluster (see Section 17.1.2, “MySQL Cluster Nodes, Node Groups, Replicas, and Partitions”), you can increase the number of fragments—and thus the available space—by using more data nodes.