Rechercher dans le manuel MySQL
22.5.10 ndbinfo: The NDB Cluster Information Database
[+/-]
- 22.5.10.1 The ndbinfo arbitrator_validity_detail Table
- 22.5.10.2 The ndbinfo arbitrator_validity_summary Table
- 22.5.10.3 The ndbinfo blocks Table
- 22.5.10.4 The ndbinfo cluster_locks Table
- 22.5.10.5 The ndbinfo cluster_operations Table
- 22.5.10.6 The ndbinfo cluster_transactions Table
- 22.5.10.7 The ndbinfo config_nodes Table
- 22.5.10.8 The ndbinfo config_params Table
- 22.5.10.9 The ndbinfo config_values Table
- 22.5.10.10 The ndbinfo counters Table
- 22.5.10.11 The ndbinfo cpustat Table
- 22.5.10.12 The ndbinfo cpustat_50ms Table
- 22.5.10.13 The ndbinfo cpustat_1sec Table
- 22.5.10.14 The ndbinfo cpustat_20sec Table
- 22.5.10.15 The ndbinfo dict_obj_info Table
- 22.5.10.16 The ndbinfo dict_obj_types Table
- 22.5.10.17 The ndbinfo disk_write_speed_base Table
- 22.5.10.18 The ndbinfo disk_write_speed_aggregate Table
- 22.5.10.19 The ndbinfo disk_write_speed_aggregate_node Table
- 22.5.10.20 The ndbinfo diskpagebuffer Table
- 22.5.10.21 The ndbinfo error_messages Table
- 22.5.10.22 The ndbinfo locks_per_fragment Table
- 22.5.10.23 The ndbinfo logbuffers Table
- 22.5.10.24 The ndbinfo logspaces Table
- 22.5.10.25 The ndbinfo membership Table
- 22.5.10.26 The ndbinfo memoryusage Table
- 22.5.10.27 The ndbinfo memory_per_fragment Table
- 22.5.10.28 The ndbinfo nodes Table
- 22.5.10.29 The ndbinfo operations_per_fragment Table
- 22.5.10.30 The ndbinfo processes Table
- 22.5.10.31 The ndbinfo resources Table
- 22.5.10.32 The ndbinfo restart_info Table
- 22.5.10.33 The ndbinfo server_locks Table
- 22.5.10.34 The ndbinfo server_operations Table
- 22.5.10.35 The ndbinfo server_transactions Table
- 22.5.10.36 The ndbinfo table_distribution_status Table
- 22.5.10.37 The ndbinfo table_fragments Table
- 22.5.10.38 The ndbinfo table_info Table
- 22.5.10.39 The ndbinfo table_replicas Table
- 22.5.10.40 The ndbinfo tc_time_track_stats Table
- 22.5.10.41 The ndbinfo threadblocks Table
- 22.5.10.42 The ndbinfo threads Table
- 22.5.10.43 The ndbinfo threadstat Table
- 22.5.10.44 The ndbinfo transporters Table
ndbinfo
is a database containing information
specific to NDB Cluster.
This database contains a number of tables, each providing a different sort of data about NDB Cluster node status, resource usage, and operations. You can find more detailed information about each of these tables in the next several sections.
ndbinfo
is included with NDB Cluster support in
the MySQL Server; no special compilation or configuration steps
are required; the tables are created by the MySQL Server when it
connects to the cluster. You can verify that
ndbinfo
support is active in a given MySQL
Server instance using SHOW PLUGINS
;
if ndbinfo
support is enabled, you should see a
row containing ndbinfo
in the
Name
column and ACTIVE
in
the Status
column, as shown here (emphasized
text):
- +----------------------------------+--------+--------------------+---------+---------+
- +----------------------------------+--------+--------------------+---------+---------+
- +----------------------------------+--------+--------------------+---------+---------+
You can also do this by checking the output of
SHOW ENGINES
for a line including
ndbinfo
in the Engine
column
and YES
in the Support
column, as shown here (emphasized text):
- mysql> SHOW ENGINES\G
- *************************** 1. row ***************************
- Engine: ndbcluster
- Support: YES
- Transactions: YES
- XA: NO
- Savepoints: NO
- *************************** 2. row ***************************
- Engine: CSV
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 3. row ***************************
- Support: DEFAULT
- Transactions: YES
- XA: YES
- Savepoints: YES
- *************************** 4. row ***************************
- Engine: BLACKHOLE
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 5. row ***************************
- Engine: MyISAM
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 6. row ***************************
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 7. row ***************************
- Engine: ARCHIVE
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 8. row ***************************
- Engine: ndbinfo
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 9. row ***************************
- Engine: PERFORMANCE_SCHEMA
- Support: YES
- XA: NO
- Savepoints: NO
- *************************** 10. row ***************************
- Engine: MEMORY
- Support: YES
- XA: NO
- Savepoints: NO
If ndbinfo
support is enabled, then you can
access ndbinfo
using SQL statements in
mysql or another MySQL client. For example, you
can see ndbinfo
listed in the output of
SHOW DATABASES
, as shown here
(emphasized text):
- +--------------------+
- +--------------------+
- | information_schema |
- | mysql |
- | ndbinfo |
- | performance_schema |
- | sys |
- +--------------------+
If the mysqld process was not started with the
--ndbcluster
option,
ndbinfo
is not available and is not displayed
by SHOW DATABASES
. If
mysqld was formerly connected to an NDB Cluster
but the cluster becomes unavailable (due to events such as cluster
shutdown, loss of network connectivity, and so forth),
ndbinfo
and its tables remain visible, but an
attempt to access any tables (other than blocks
or config_params
) fails with Got
error 157 'Connection to NDB failed' from NDBINFO.
With the exception of the blocks
and
config_params
tables, what we refer to as
ndbinfo
“tables” are actually
views generated from internal NDB
tables not normally visible to the MySQL Server.
All ndbinfo
tables are read-only, and are
generated on demand when queried. Because many of them are
generated in parallel by the data nodes while other are specific
to a given SQL node, they are not guaranteed to provide a
consistent snapshot.
In addition, pushing down of joins is not supported on
ndbinfo
tables; so joining large
ndbinfo
tables can require transfer of a large
amount of data to the requesting API node, even when the query
makes use of a WHERE
clause.
ndbinfo
tables are not included in the query
cache. (Bug #59831)
You can select the ndbinfo
database with a
USE
statement, and then issue a
SHOW TABLES
statement to obtain a
list of tables, just as for any other database, like this:
- Database changed
- +---------------------------------+
- | Tables_in_ndbinfo |
- +---------------------------------+
- | arbitrator_validity_detail |
- | arbitrator_validity_summary |
- | blocks |
- | cluster_locks |
- | cluster_operations |
- | cluster_transactions |
- | config_nodes |
- | config_params |
- | config_values |
- | counters |
- | cpustat |
- | cpustat_1sec |
- | cpustat_20sec |
- | cpustat_50ms |
- | dict_obj_info |
- | dict_obj_types |
- | disk_write_speed_aggregate |
- | disk_write_speed_aggregate_node |
- | disk_write_speed_base |
- | diskpagebuffer |
- | error_messages |
- | locks_per_fragment |
- | logbuffers |
- | logspaces |
- | membership |
- | memory_per_fragment |
- | memoryusage |
- | nodes |
- | operations_per_fragment |
- | processes |
- | resources |
- | restart_info |
- | server_locks |
- | server_operations |
- | server_transactions |
- | table_distribution_status |
- | table_fragments |
- | table_info |
- | table_replicas |
- | tc_time_track_stats |
- | threadblocks |
- | threads |
- | threadstat |
- | transporters |
- +---------------------------------+
In NDB 8.0, all ndbinfo
tables use the
NDB
storage engine; however, an
ndbinfo
entry still appears in the output of
SHOW ENGINES
and
SHOW PLUGINS
as described
previously.
You can execute SELECT
statements
against these tables, just as you would normally expect:
- +---------+---------------------+--------+------------+------------+-------------+
- | node_id | memory_type | used | used_pages | total | total_pages |
- +---------+---------------------+--------+------------+------------+-------------+
- +---------+---------------------+--------+------------+------------+-------------+
More complex queries, such as the two following
SELECT
statements using the
memoryusage
table, are possible:
ndbinfo
table and column names are case
sensitive (as is the name of the ndbinfo
database itself). These identifiers are in lowercase. Trying to
use the wrong lettercase results in an error, as shown in this
example:
- +---------+--------+---------+-------------+
- +---------+--------+---------+-------------+
- | 1 | 13602 | STARTED | 0 |
- | 2 | 16 | STARTED | 0 |
- +---------+--------+---------+-------------+
mysqldump ignores the
ndbinfo
database entirely, and excludes it from
any output. This is true even when using the
--databases
or
--all-databases
option.
NDB Cluster also maintains tables in the
INFORMATION_SCHEMA
information database,
including the FILES
table which
contains information about files used for NDB Cluster Disk Data
storage, and the
ndb_transid_mysql_connection_map
table, which shows the relationships between transactions,
transaction coordinators, and NDB Cluster API nodes. For more
information, see the descriptions of the tables or
Section 22.5.11, “INFORMATION_SCHEMA Tables for NDB Cluster”.
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-mysql-cluster-ndbinfo.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.