Why you can't change
Clustering with MySQL is supported only by the NDB storage engine.
ndbcluster/ndb storage engine is meant for clustering if you specify a table with
ENGINE=ndbcluster; this means table is being shared with all nodes and simply you can't change it to other
ENGINE types, either you should take a backup of this table and then
DROP table with
ndbcluster option and import by changing
However, it is possible to create tables using other storage engines (such as InnoDB or MyISAM) on a MySQL server being used with a MySQL Cluster, but since these tables do not use
NDB, they do not participate in clustering; each such table is strictly local to the individual MySQL server instance on which it is created.
Migrating from InnoDB to ndbcluster?
There are two ways to migrate InnoDB tables with foreign keys to NDB.
- Dump the database and edit the script so each table specifies ENGINE=NDB before re-importing the script to a new database
- Drop the constraints, alter the tables to use the NDB engine, and recreate the constraints
Dumping the database and editing the script is a straightforward use of mysqldump and a text editor.
Converting InnoDB Tables to MySQL Cluster