Some database objects such as tables and indexes have different
limitations when using the
NDBCLUSTER storage engine:
Database and table names. When using the
NDBstorage engine, the maximum allowed length both for database names and for table names is 63 characters. A statement using a database name or table name longer than this limit fails with an appropriate error.
Number of database objects. The maximum number of all
NDBdatabase objects in a single NDB Cluster—including databases, tables, and indexes—is limited to 20320.
Attributes per table. The maximum number of attributes (that is, columns and indexes) that can belong to a given table is 512.
Attributes per key. The maximum number of attributes per key is 32.
Row size. The maximum permitted size of any one row is 14000 bytes.
In addition, the maximum offset for a fixed-width column of an
NDBtable is 8188 bytes; attempting to create a table that violates this limitation fails with NDB error 851 Maximum offset for fixed-size columns exceeded. For memory-based columns, you can work around this limitation by using a variable-width column type such as
VARCHARor defining the column as
COLUMN_FORMAT=DYNAMIC; this does not work with columns stored on disk. For disk-based columns, you may be able to do so by reordering one or more of the table's disk-based columns such that the combined width of all but the disk-based column defined last in the
CREATE TABLEstatement used to create the table does not exceed 8188 bytes, less any possible rounding performed for some data types such as
VARCHAR; otherwise it is necessary to use memory-based storage for one or more of the offending column or columns instead.
BIT column storage per table. The maximum combined width for all
BITcolumns used in a given
NDBtable is 4096.
FIXED column storage. NDB Cluster 7.5 and later supports a maximum of 128 TB per fragment of data in
FIXEDcolumns. (Previously, this was 16 GB.)