•From within the mysql  client, use SHOW ERRORS  or SHOW WARNINGS  immediately upon being notified of the error or warning condition. 

A.10.19. Is NDB Cluster transaction-safe? What isolation levels are supported? 

•From a system shell prompt, use perror --ndb error_code . 

Yes . For tables created with the NDB  storage engine, transactions are supported. Currently, NDB Cluster supports only the READ COMMITTED  transaction isolation level. 

A.10.20. What storage engines are supported by NDB Cluster? 

NDB Cluster requires the NDB  storage engine. That is, in order for a table to be shared between nodes in an NDB Cluster, the table must be created using ENGINE=NDB  (or the equivalent option ENGINE=NDBCLUSTER ). 

It is possible to create tables using other storage engines (such as InnoDB  or MyISAM ) on a MySQL server being used with NDB 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. 

NDB Cluster is quite different from InnoDB  clustering with regard to architecture, requirements, and implementation; despite any similarity in their names, the two are not compatible. For more information about InnoDB  clustering, see Using MySQL AdminAPI. See also Section 23.1.6, “MySQL Server Using InnoDB Compared with NDB Cluster” , for information about the differences between the NDB  and InnoDB  storage engines. 

A.10.21. In the event of a catastrophic failure— for example, the whole city loses power and  my UPS fails— would I lose all my data? 

All committed transactions are logged. Therefore, although it is possible that some data could be lost in the event of a catastrophe, this should be quite limited. Data loss can be further reduced by minimizing the number of operations per transaction. (It is not a good idea to perform large numbers of operations per transaction in any case.) 

A.10.22. Is it possible to use FULLTEXT  indexes with NDB Cluster? 

FULLTEXT  indexing is currently supported only by the InnoDB  and MyISAM  storage engines. See Section 12.10, “Full-Text Search Functions” , for more information. 

A.10.23. Can I run multiple nodes on a single computer? 

It is possible but not always advisable. One of the chief reasons to run a cluster is to provide redundancy. To obtain the full benefits of this redundancy, each node should reside on a separate machine. If you place multiple nodes on a single machine and that machine fails, you lose all of those nodes. For this reason, if you do run multiple data nodes on a single machine, it is extremely important that they be set up in such a way that the failure of this machine does not cause the loss of all the data nodes in a given node group. 

Given that NDB Cluster can be run on commodity hardware loaded with a low-cost (or even no-cost) operating system, the expense of an extra machine or two is well worth it to safeguard mission- critical data. It also worth noting that the requirements for a cluster host running a management node are minimal. This task can be accomplished with a 300 MHz Pentium or equivalent CPU and sufficient RAM for the operating system, plus a small amount of overhead for the ndb_mgmd  and ndb_mgm  processes. 

