21.6.15 ndbinfo: База данных информации о кластере NDB
- 21.6.15.1 Таблица ndbinfo arbitrator_validity_detail
- 21.6.15.2 Таблица ndbinfo arbitrator_validity_summary
- 21.6.15.3 Таблица ndbinfo blocks
- 21.6.15.4 Таблица ndbinfo cluster_locks
- 21.6.15.5 Таблица ndbinfo cluster_operations
- 21.6.15.6 Таблица ndbinfo cluster_transactions
- 21.6.15.7 Таблица ndbinfo config_nodes
- 21.6.15.8 Таблица ndbinfo config_params
- 21.6.15.9 Таблица ndbinfo config_values
- 21.6.15.10 Таблица ndbinfo counters
- 21.6.15.11 Таблица ndbinfo cpustat
- 21.6.15.12 Таблица ndbinfo cpustat_50ms
- 21.6.15.13 Таблица ndbinfo cpustat_1sec
- 21.6.15.14 Таблица ndbinfo cpustat_20sec
- 21.6.15.15 Таблица ndbinfo dict_obj_info
- 21.6.15.16 Таблица ndbinfo dict_obj_types
- 21.6.15.17 Таблица ndbinfo disk_write_speed_base
- 21.6.15.18 Таблица ndbinfo disk_write_speed_aggregate
- 21.6.15.19 Таблица ndbinfo disk_write_speed_aggregate_node
- 21.6.15.20 Таблица ndbinfo diskpagebuffer
- 21.6.15.21 Таблица ndbinfo error_messages
- 21.6.15.22 Таблица ndbinfo locks_per_fragment
- 21.6.15.23 Таблица ndbinfo logbuffers
- 21.6.15.24 Таблица ndbinfo logspaces
- 21.6.15.25 Таблица ndbinfo membership
- 21.6.15.26 Таблица ndbinfo memoryusage
- 21.6.15.27 Таблица ndbinfo memory_per_fragment
- 21.6.15.28 Таблица ndbinfo nodes
- 21.6.15.29 Таблица ndbinfo operations_per_fragment
- 21.6.15.30 Таблица ndbinfo processes
- 21.6.15.31 Таблица ndbinfo resources
- 21.6.15.32 Таблица ndbinfo restart_info
- 21.6.15.33 Таблица ndbinfo server_locks
- 21.6.15.34 Таблица ndbinfo server_operations
- 21.6.15.35 Таблица ndbinfo server_transactions
- 21.6.15.36 Таблица ndbinfo table_distribution_status
- 21.6.15.37 Таблица ndbinfo table_fragments
- 21.6.15.38 Таблица ndbinfo table_info
- 21.6.15.39 Таблица ndbinfo table_replicas
- 21.6.15.40 Таблица ndbinfo tc_time_track_stats
- 21.6.15.41 Таблица ndbinfo threadblocks
- 21.6.15.42 Таблица ndbinfo threads
- 21.6.15.43 Таблица ndbinfo threadstat
- 21.6.15.44 Таблица ndbinfo transporters
ndbinfo представляет собой базу данных, содержащую информацию, специфичную для кластера NDB.
Эта база данных содержит ряд таблиц, каждая из которых предоставляет различные данные о состоянии узлов кластера NDB, использовании ресурсов и операциях. Более подробную информацию о каждой из этих таблиц вы найдете в следующих разделах.
ndbinfo включена в поддержку кластера NDB в MySQL Server; не требуются специальные шаги компиляции или конфигурации; таблицы создаются MySQL Server при подключении к кластеру. Вы можете проверить, что ndbinfo поддержка активна в данном экземпляре MySQL Server, используя SHOW PLUGINS; если ndbinfo поддержка включена, вы должны увидеть строку, содержащую ndbinfo в столбце Name и ACTIVE в столбце Status, как показано здесь (выделенный текст):
mysql> SHOW PLUGINS;
+----------------------------------+--------+--------------------+---------+---------+
| Name | Status | Type | Library | License |
+----------------------------------+--------+--------------------+---------+---------+
| binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
| mysql_native_password | ACTIVE | AUTHENTICATION | NULL | GPL |
| sha256_password | ACTIVE | AUTHENTICATION | NULL | GPL |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
| CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| InnoDB | ACTIVE | STORAGE ENGINE | NULL | GPL |
| INNODB_TRX | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_LOCKS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_LOCK_WAITS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMPMEM | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP_PER_INDEX | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_CMP_PER_INDEX_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_BUFFER_PAGE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_BUFFER_PAGE_LRU | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_BUFFER_POOL_STATS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_TEMP_TABLE_INFO | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_METRICS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_DEFAULT_STOPWORD | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_DELETED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_BEING_DELETED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_CONFIG | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_INDEX_CACHE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_FT_INDEX_TABLE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_TABLES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_TABLESTATS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_INDEXES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_COLUMNS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_FIELDS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_FOREIGN | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_FOREIGN_COLS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_TABLESPACES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_DATAFILES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| INNODB_SYS_VIRTUAL | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| PERFORMANCE_SCHEMA | ACTIVE | STORAGE ENGINE | NULL | GPL |
| ndbCluster | ACTIVE | STORAGE ENGINE | NULL | GPL |
| ndbinfo | ACTIVE | STORAGE ENGINE | NULL | GPL |
| ndb_transid_mysql_connection_map | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
| BLACKHOLE | ACTIVE | STORAGE ENGINE | NULL | GPL |
| ARCHIVE | ACTIVE | STORAGE ENGINE | NULL | GPL |
| partition | ACTIVE | STORAGE ENGINE | NULL | GPL |
| ngram | ACTIVE | FTPARSER | NULL | GPL |
+----------------------------------+--------+--------------------+---------+---------+
46 rows in set (0.00 sec)
Вы также можете сделать это, проверив вывод SHOW ENGINES на наличие строки, содержащей ndbinfo в столбце Engine и YES в столбце Support, как показано здесь (выделенный текст):
mysql> SHOW ENGINES\G
*************************** 1. row ***************************
Engine: ndbcluster
Support: YES
Comment: Clustered, fault-tolerant tables
Transactions: YES
XA: NO
Savepoints: NO
*************************** 2. row ***************************
Engine: CSV
Support: YES
Comment: CSV storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 3. row ***************************
Engine: InnoDB
Support: DEFAULT
Comment: Supports transactions, row-level locking, and foreign keys
Transactions: YES
XA: YES
Savepoints: YES
*************************** 4. row ***************************
Engine: BLACKHOLE
Support: YES
Comment: /dev/null storage engine (anything you write to it disappears)
Transactions: NO
XA: NO
Savepoints: NO
*************************** 5. row ***************************
Engine: MyISAM
Support: YES
Comment: MyISAM storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 6. row ***************************
Engine: MRG_MYISAM
Support: YES
Comment: Collection of identical MyISAM tables
Transactions: NO
XA: NO
Savepoints: NO
*************************** 7. row ***************************
Engine: ARCHIVE
Support: YES
Comment: Archive storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 8. row ***************************
Engine: ndbinfo
Support: YES
Comment: NDB Cluster system information storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 9. row ***************************
Engine: PERFORMANCE_SCHEMA
Support: YES
Comment: Performance Schema
Transactions: NO
XA: NO
Savepoints: NO
*************************** 10. row ***************************
Engine: MEMORY
Support: YES
Comment: Hash based, stored in memory, useful for temporary tables
Transactions: NO
XA: NO
Savepoints: NO
10 rows in set (0.00 sec)
Если ndbinfo поддержка включена, то вы можете получить доступ к ndbinfo с помощью SQL-запросов в mysql или другом MySQL-клиенте. Например, вы можете увидеть ndbinfo в выводе SHOW DATABASES, как показано здесь (выделенный текст):
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| ndbinfo |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.04 sec)
Если процесс mysqld не был запущен с опцией --ndbcluster, ndbinfo недоступна и не отображается командой SHOW DATABASES. Если mysqld ранее был подключен к кластеру NDB, но кластер стал недоступен (из-за событий, таких как остановка кластера, потери сетевого соединения и т. д.), ndbinfo и её таблицы остаются видимыми, но попытка доступа к любым таблицам (кроме blocks или config_params) завершается ошибкой Ошибка 157 'Подключение к NDB не удалось' от NDBINFO.
За исключением таблиц blocks и config_params, то, что мы называем ndbinfo “таблицами”, на самом деле являются представлениями, сгенерированными из внутренних таблиц NDB, обычно невидимыми для MySQL Server. Вы можете сделать эти таблицы видимыми, установив системную переменную ndbinfo_show_hidden в ON (или 1), но обычно это не требуется.
Все таблицы ndbinfo являются только для чтения и генерируются по требованию при запросе. Поскольку многие из них генерируются параллельно узлами данных, а другие специфичны для данного узла SQL, они не гарантируют предоставление согласованной моментальной копии.
Кроме того, применение объединений не поддерживается для таблиц ndbinfo; поэтому объединение больших таблиц ndbinfo может потребовать передачи большого объема данных на запрашивающий узел API, даже если запрос использует предложение WHERE.
Таблицы ndbinfo не включены в кэш запросов. (Ошибка #59831)
Вы можете выбрать базу данных ndbinfo с помощью оператора USE, а затем выдать оператор SHOW TABLES для получения списка таблиц, как и для любой другой базы данных, например:
mysql> USE ndbinfo;
Database changed
mysql> SHOW TABLES;
+---------------------------------+
| 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 |
+---------------------------------+
44 rows in set (0.00 sec)
В NDB 7.5.0 (и более поздних версиях) все таблицы ndbinfo используют движок хранения NDB; однако запись ndbinfo всё ещё появляется в выводе SHOW ENGINES и SHOW PLUGINS, как описано ранее.
Таблица config_values была добавлена в NDB 7.5.0.
Таблицы cpustat, cpustat_50ms, cpustat_1sec, cpustat_20sec и threads были добавлены в NDB 7.5.2.
Таблицы cluster_locks, locks_per_fragment и server_locks были добавлены в NDB 7.5.3.
Таблицы dict_obj_info, table_distribution_status, table_fragments, table_info и table_replicas были добавлены в NDB 7.5.4.
Таблицы config_nodes и processes были добавлены в NDB 7.5.7.
Таблица error_messages была добавлена в NDB 7.6.
Вы можете выполнять SELECT запросы к этим таблицам, как обычно:
mysql> SELECT * FROM memoryusage;
+---------+---------------------+--------+------------+------------+-------------+
| node_id | memory_type | used | used_pages | total | total_pages |
+---------+---------------------+--------+------------+------------+-------------+
| 5 | Data memory | 753664 | 23 | 1073741824 | 32768 |
| 5 | Index memory | 163840 | 20 | 1074003968 | 131104 |
| 5 | Long message buffer | 2304 | 9 | 67108864 | 262144 |
| 6 | Data memory | 753664 | 23 | 1073741824 | 32768 |
| 6 | Index memory | 163840 | 20 | 1074003968 | 131104 |
| 6 | Long message buffer | 2304 | 9 | 67108864 | 262144 |
+---------+---------------------+--------+------------+------------+-------------+
6 rows in set (0.02 sec)
Более сложные запросы, такие как два следующих SELECT запроса, использующие таблицу memoryusage, тоже возможны:
mysql> SELECT SUM(used) as 'Data Memory Used, All Nodes'
> FROM memoryusage
> WHERE memory_type = 'Data memory';
+-----------------------------+
| Data Memory Used, All Nodes |
+-----------------------------+
| 6460 |
+-----------------------------+
1 row in set (0.37 sec)
mysql> SELECT SUM(max) as 'Total IndexMemory Available'
> FROM memoryusage
> WHERE memory_type = 'Index memory';
+-----------------------------+
| Total IndexMemory Available |
+-----------------------------+
| 25664 |
+-----------------------------+
1 row in set (0.33 sec)
Имена таблиц и столбцов в ndbinfo таблице являются регистрозависимыми (как и само имя базы данных ndbinfo). Эти идентификаторы в нижнем регистре. Попытка использовать неправильный регистр приводит к ошибке, как показано в этом примере:
mysql> SELECT * FROM nodes;
+---------+--------+---------+-------------+
| node_id | uptime | status | start_phase |
+---------+--------+---------+-------------+
| 1 | 13602 | STARTED | 0 |
| 2 | 16 | STARTED | 0 |
+---------+--------+---------+-------------+
2 rows in set (0.04 sec)
mysql> SELECT * FROM Nodes;
ERROR 1146 (42S02): Table 'ndbinfo.Nodes' doesn't exist
mysqldump игнорирует базу данных ndbinfo целиком и исключает её из любого вывода. Это верно даже при использовании опции --databases или --all-databases.
NDB Cluster также поддерживает таблицы в базе данных информации INFORMATION_SCHEMA, включая таблицу FILES, которая содержит информацию о файлах, используемых для хранения данных NDB Cluster Disk Data, и таблицу ndb_transid_mysql_connection_map, которая показывает взаимосвязи между транзакциями, координаторами транзакций и узлами NDB Cluster API. Более подробную информацию см. в описаниях таблиц или в разделе 21.6.16, «Таблицы INFORMATION_SCHEMA для NDB Cluster».
© 2025 Oracle
Licensed under the GPLv2 License.