The MySQL Cluster API Developer Guide
Version 2.0 (2009-06-11)
Copyright 2003-2008 MySQL AB, 2009 Sun Microsystems, Inc.
This documentation is NOT distributed under a GPL license. Use of this documentation is subject to the following terms: You may create a printed copy of this documentation solely for your own personal use. Conversion to other formats is allowed as long as the actual content is not altered or edited in any way. You shall not publish or distribute this documentation in any form or on any media, except if you distribute the documentation in a manner similar to how Sun disseminates it (that is, electronically for download on a Web site with the software) or on a CD-ROM or similar medium, provided however that the documentation is disseminated together with the software on the same medium. Any other use, such as any dissemination of printed copies or use of this documentation, in whole or in part, in another publication, requires the prior written consent from an authorized representative of Sun Microsystems, Inc. Sun Microsystems, Inc. and MySQL AB reserve any and all rights to this documentation not expressly granted above.
For more information on the terms of this license, for details on how the MySQL documentation is built and produced, or if you are interested in doing a translation, please contact the Documentation Team.
If you want help with using MySQL, please visit either the MySQL Forums or MySQL Mailing Lists where you can discuss your issues with other MySQL users.
For additional documentation on MySQL products, including translations of the documentation into other languages, and downloadable versions in variety of formats, including HTML, CHM, and PDF formats, see MySQL Documentation Library.
The MySQL Cluster API Developer Guide
Document generated on: 2009-06-11 (revision: 15304)
This guide provides information for developers wishing to use:
The low-level C/C++-language NDB API for the MySQL
NDBCLUSTER storage engine, the C-language MGM
API for communicating with and controlling MySQL Cluster
management servers, and other APIs used with MySQL in the
context of MySQL Cluster. This Guide includes concepts,
terminology, class and function references, practical examples,
common problems, and tips for using these APIs in applications.
It also contains information about NDB internals that may be of
interest to developers working with
NDBCLUSTER, such as communication protocols
employed between nodes, filesystems used by data nodes, and
error messages.
The information presented in this guide is current for recent MySQL Cluster NDB 6.2, NDB 6.3, and NDB 7.0 releases. You should be aware that there have been significant changes in the NDB API, MGM API, and other particulars in MySQL Cluster versions since MySQL 5.1.12.
Table of Contents
- 1. Overview and Concepts
- 2. The NDB API
-
- 2.1. Getting Started with the NDB API
- 2.2. The NDB API Object Hierarachy
- 2.3. NDB API Classes, Interfaces, and Structures
-
- 2.3.1. The
ColumnClass - 2.3.2. The
DatafileClass - 2.3.3. The
DictionaryClass - 2.3.4. The
EventClass - 2.3.5. The
IndexClass - 2.3.6. The
LogfileGroupClass - 2.3.7. The
ListClass - 2.3.8. The
NdbClass - 2.3.9. The
NdbBlobClass - 2.3.10. The
NdbDictionaryClass - 2.3.11. The
NdbEventOperationClass - 2.3.12. The
NdbIndexOperationClass - 2.3.13. The
NdbIndexScanOperationClass - 2.3.14. The
NdbInterpretedCodeClass - 2.3.15. The
NdbOperationClass - 2.3.16. The
NdbRecAttrClass - 2.3.17. The
NdbScanFilterClass - 2.3.18. The
NdbScanOperationClass - 2.3.19. The
NdbTransactionClass - 2.3.20. The
ObjectClass - 2.3.21. The
TableClass - 2.3.22. The
TablespaceClass - 2.3.23. The
UndofileClass - 2.3.24. The
Ndb_cluster_connectionClass - 2.3.25. The
NdbRecordInterface - 2.3.26. The
AutoGrowSpecificationStructure - 2.3.27. The
ElementStructure - 2.3.28. The
IndexBoundStructure - 2.3.29. The
Key_part_ptrStructure - 2.3.30. The
NdbErrorStructure - 2.3.31. The
PartitionSpecStructure - 2.3.32. The
RecordSpecificationStructure
- 2.3.1. The
- 2.4. Practical Examples
-
- 2.4.1. Using Synchronous Transactions
- 2.4.2. Using Synchronous Transactions and Multiple Clusters
- 2.4.3. Handling Errors and Retrying Transactions
- 2.4.4. Basic Scanning Example
- 2.4.5. Using Secondary Indexes in Scans
- 2.4.6. Using
NdbRecordwith Hash Indexes - 2.4.7. NDB API Event Handling Example
- 2.4.8. Event Handling with Multiple Clusters
- 2.4.9. Basic
BLOBHandling Example - 2.4.10. Handling
BLOBs UsingNdbRecord
- 3. The MGM API
-
- 3.1. General Concepts
- 3.2. MGM C API Function Listing
-
- 3.2.1. Log Event Functions
- 3.2.2. MGM API Error Handling Functions
- 3.2.3. Management Server Handle Functions
- 3.2.4. Management Server Connection Functions
- 3.2.5. Cluster Status Functions
- 3.2.6. Functions for Starting & Stopping Nodes
- 3.2.7. Cluster Log Functions
- 3.2.8. Backup Functions
- 3.2.9. Single-User Mode Functions
- 3.3. MGM Datatypes
- 3.4. MGM Structures
- 4. MySQL Cluster API Errors
- 5. MySQL Cluster Internals
-
- 5.1. MySQL Cluster File Systems
- 5.2.
DUMPCommands -
- 5.2.1.
DUMPCodes 1 to 999 - 5.2.2.
DUMPCodes 1000 to 1999 - 5.2.3.
DUMPCodes 2000 to 2999 - 5.2.4.
DUMPCodes 3000 to 3999 - 5.2.5.
DUMPCodes 4000 to 4999 - 5.2.6.
DUMPCodes 5000 to 5999 - 5.2.7.
DUMPCodes 6000 to 6999 - 5.2.8.
DUMPCodes 7000 to 7999 - 5.2.9.
DUMPCodes 8000 to 8999 - 5.2.10.
DUMPCodes 9000 to 9999 - 5.2.11.
DUMPCodes 10000 to 10999 - 5.2.12.
DUMPCodes 11000 to 11999 - 5.2.13.
DUMPCodes 12000 to 12999
- 5.2.1.
- 5.3. The NDB Protocol
- 5.4.
NDBKernel Blocks -
- 5.4.1. The
BACKUPBlock - 5.4.2. The
CMVMIBlock - 5.4.3. The
DBACCBlock - 5.4.4. The
DBDICTBlock - 5.4.5. The
DBDIHBlock - 5.4.6.
DBLQHBlock - 5.4.7. The
DBTCBlock - 5.4.8. The
DBTUPBlock - 5.4.9.
DBTUXBlock - 5.4.10. The
DBUTILBlock - 5.4.11. The
LGMANBlock - 5.4.12. The
NDBCNTRBlock - 5.4.13. The
NDBFSBlock - 5.4.14. The
PGMANBlock - 5.4.15. The
QMGRBlock - 5.4.16. The
RESTOREBlock - 5.4.17. The
SUMABlock - 5.4.18. The
TSMANBlock - 5.4.19. The
TRIXBlock
- 5.4.1. The
- 5.5. MySQL Cluster Start Phases
-
- 5.5.1. Initialization Phase (Phase -1)
- 5.5.2. Configuration Read Phase (
STTORPhase -1) - 5.5.3.
STTORPhase 0 - 5.5.4.
STTORPhase 1 - 5.5.5.
STTORPhase 2 - 5.5.6.
NDB_STTORPhase 1 - 5.5.7.
STTORPhase 3 - 5.5.8.
NDB_STTORPhase 2 - 5.5.9.
STTORPhase 4 - 5.5.10.
NDB_STTORPhase 3 - 5.5.11.
STTORPhase 5 - 5.5.12.
NDB_STTORPhase 4 - 5.5.13.
NDB_STTORPhase 5 - 5.5.14.
NDB_STTORPhase 6 - 5.5.15.
STTORPhase 6 - 5.5.16.
STTORPhase 7 - 5.5.17.
STTORPhase 8 - 5.5.18.
NDB_STTORPhase 7 - 5.5.19.
STTORPhase 9 - 5.5.20.
STTORPhase 101 - 5.5.21. System Restart Handling in Phase 4
- 5.5.22.
START_MEREQHandling
- 5.6.
NDBInternals Glossary
- Index

