Spec-Zone.ru › MySQL 8.4

25.6.7.1 Добавление узлов данных NDB Cluster онлайн: общие вопросы

В данном разделе содержится общая информация о поведении и текущих ограничениях при добавлении узлов NDB Cluster онлайн.

Перераспределение данных. Возможность добавления новых узлов онлайн включает возможность переорганизации данных таблиц NDBCLUSTER и индексов таким образом, чтобы они были распределены по всем узлам данных, включая новые, с помощью оператора ALTER TABLE ... REORGANIZE PARTITION. Поддерживается переорганизация таблиц как для таблиц в оперативной памяти, так и для таблиц на диске. Это перераспределение в настоящее время не включает уникальные индексы (перераспределяются только упорядоченные индексы).

Перераспределение для таблиц NDBCLUSTER, уже существующих до добавления новых узлов данных, не происходит автоматически, но может быть выполнено с помощью простых операторов SQL в mysql или другом приложении-клиенте MySQL. Однако все данные и индексы, добавленные в таблицы, созданные после добавления новой группы узлов, автоматически распределяются между всеми узлами данных кластера, включая добавленные в состав новой группы узлов.

Частичный запуск. Возможно добавление новой группы узлов без запуска всех новых узлов данных. Также возможно добавление новой группы узлов в деградированный кластер — то есть в кластер, который запущен только частично или где один или несколько узлов данных не работают. В последнем случае кластер должен иметь достаточно работающих узлов для работоспособности, прежде чем можно будет добавить новую группу узлов.

Влияние на текущие операции. Обычные операции DML с использованием данных NDB Cluster не препятствуют созданию или добавлению новой группы узлов или переорганизации таблиц. Однако невозможно выполнить DDL одновременно с переорганизацией таблиц — то есть нельзя выдавать другие операторы DDL во время выполнения оператора ALTER TABLE ... REORGANIZE PARTITION. Кроме того, во время выполнения ALTER TABLE ... REORGANIZE PARTITION (или выполнения любого другого оператора DDL) невозможно перезапустить узлы данных кластера.

Обработка сбоев. Сбои узлов данных во время создания группы узлов и переорганизации таблиц обрабатываются, как показано в следующей таблице:

Таблица 25.38 Обработка сбоев узла данных во время создания группы узлов и переорганизации таблиц

Таблица 25.38 Обработка сбоев узла данных во время создания группы узлов и переорганизации таблиц
Сбой во время Сбой в узле данных “Старый” Сбой в узле данных “Новый” Системный сбой
Создание группы узлов
  • Если сбой произошел в узле, отличном от мастера: Создание группы узлов всегда выполняется дальше.

  • Если произошел сбой мастера:

    • Если внутренняя точка фиксации достигнута: Создание группы узлов выполняется дальше.

    • Если внутренняя точка фиксации еще не достигнута: Создание группы узлов отменяется.

  • Если сбой произошел в узле, отличном от мастера: Создание группы узлов всегда выполняется дальше.

  • Если произошел сбой мастера:

    • Если внутренняя точка фиксации достигнута: Создание группы узлов выполняется дальше.

    • Если внутренняя точка фиксации еще не достигнута: Создание группы узлов отменяется.

  • Если выполнение CREATE NODEGROUP достигло внутренней точки фиксации: При перезапуске кластер включает новую группу узлов. В противном случае — нет.

  • Если выполнение CREATE NODEGROUP еще не достигло внутренней точки фиксации: При перезапуске кластер не включает новую группу узлов.

Переорганизация таблицы
  • Если сбой произошел в узле, отличном от мастера: Переорганизация таблицы всегда выполняется дальше.

  • Если произошел сбой мастера:

    • Если внутренняя точка фиксации достигнута: Переорганизация таблицы выполняется дальше.

    • Если внутренняя точка фиксации еще не достигнута: Переорганизация таблицы отменяется.

  • Если сбой произошел в узле, отличном от мастера: Переорганизация таблицы всегда выполняется дальше.

  • Если произошел сбой мастера:

    • Если внутренняя точка фиксации достигнута: Переорганизация таблицы выполняется дальше.

    • Если внутренняя точка фиксации еще не достигнута: Переорганизация таблицы отменяется.

  • Если выполнение оператора ALTER TABLE ... REORGANIZE PARTITION достигло внутренней точки фиксации: При перезапуске кластера данные и индексы, принадлежащие table, распределяются с использованием новых узлов данных.

  • Если выполнение оператора ALTER TABLE ... REORGANIZE PARTITION еще не достигло внутренней точки фиксации: При перезапуске кластера данные и индексы, принадлежащие table, распределяются только с использованием старых узлов данных.


Удаление групп узлов. Клиент ndb_mgm поддерживает команду DROP NODEGROUP, но удалить группу узлов можно только тогда, когда ни один узел данных в группе не содержит данных. Поскольку в настоящее время нет способа «очистить» определенный узел данных или группу узлов, эта команда работает только в следующих двух случаях:

  1. После выдачи команды CREATE NODEGROUP в клиенте ndb_mgm, но до выдачи операторов ALTER TABLE ... REORGANIZE PARTITION в клиенте mysql.

  2. После удаления всех таблиц NDBCLUSTER с помощью команды DROP TABLE.

    TRUNCATE TABLE не работает для этой цели, так как узлы данных по-прежнему хранят определения таблиц.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/mysql-cluster-online-add-node-remarks.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API