25.3.2.3 Инициализация запуска кластера NDB в Windows
После установки исполняемых файлов кластера NDB и необходимых конфигурационных файлов, начальный запуск кластера сводится к запуску исполняемых файлов кластера NDB для всех узлов кластера. Каждый процесс узла кластера должен запускаться отдельно на компьютере-хосте, где он расположен. Узел управления должен быть запущен первым, за ним узлы данных, а затем узлы SQL.
-
На хосте узла управления выполните следующую команду из командной строки для запуска процесса узла управления. Вывод должен быть похож на показанный здесь:
C:\mysql\bin>
ndb_mgmd2010-06-23 07:53:34 [MgmtSrvr] INFO -- NDB Cluster Management Server. mysql-9.2.0-ndb-9.2.0 2010-06-23 07:53:34 [MgmtSrvr] INFO -- Reading cluster configuration from 'config.ini'Процесс узла управления продолжает выводить журнальные данные в консоль. Это нормально, поскольку узел управления не выполняется как служба Windows. (Если вы использовали кластер NDB на платформе, подобной Unix, такой как Linux, вы можете заметить, что стандартное поведение узла управления в этом отношении в Windows фактически противоположно его поведению на системах Unix, где он по умолчанию выполняется как процесс демона Unix. Это поведение также верно для процессов узлов данных кластера NDB, работающих в Windows.) По этой причине не закрывайте окно, в котором выполняется ndb_mgmd.exe; закрытие его убивает процесс узла управления. (См. Раздел 25.3.2.4, «Установка процессов кластера NDB в качестве служб Windows», где мы показываем, как установить и запустить процессы кластера NDB в качестве служб Windows.)
Необходимый параметр
-fуказывает узлу управления, где найти глобальный конфигурационный файл (config.ini). Полная форма этого параметра —--config-file.ВажноУзел управления кластера NDB кэширует данные конфигурации, которые он считывает из
config.ini; после создания кэша конфигурации он игнорирует файлconfig.iniпри последующих запусках, если не принуждается к иному поведению. Это означает, что если узел управления не запускается из-за ошибки в этом файле, вы должны заставить узел управления повторно прочитатьconfig.iniпосле исправления всех ошибок. Вы можете сделать это, запустив ndb_mgmd.exe с параметром--reloadили--initialв командной строке. Любой из этих параметров обновляет кэш конфигурации.Использование любого из этих параметров в файле
my.iniузла управления не является необходимым или рекомендуемым. -
На каждом из хостов узлов данных запустите команду, показанную здесь, для запуска процессов узлов данных:
C:\mysql\bin>
ndbd2010-06-23 07:53:46 [ndbd] INFO -- Configuration fetched from 'localhost:1186', generation: 1В каждом случае первая строка вывода процесса узла данных должна напоминать то, что показано в предыдущем примере, и за ней следуют дополнительные строки журнальных данных. Как и в случае с процессом узла управления, это нормально, поскольку узел данных не запускается как служба Windows. По этой причине не закрывайте окно консоли, в котором выполняется процесс узла данных; закрытие его убивает ndbd.exe. (Дополнительную информацию см. в Разделе 25.3.2.4, «Установка процессов кластера NDB в качестве служб Windows».)
-
Пока не запускайте узел SQL; он не может подключиться к кластеру, пока не завершится запуск узлов данных, что может занять некоторое время. Вместо этого в новом окне консоли на хосте узла управления запустите клиент управления кластера NDB ndb_mgm.exe, который должен находиться в
C:\mysql\binна хосте узла управления. (Не пытайтесь повторно использовать окно консоли, где выполняется ndb_mgmd.exe, набирая CTRL+C, так как это убивает узел управления.) Результирующий вывод должен выглядеть так:C:\mysql\bin>
ndb_mgm-- NDB Cluster -- Management Client -- ndb_mgm>Когда появится приглашение
ndb_mgm>, это означает, что клиент управления готов принять команды управления кластером NDB. Вы можете наблюдать за статусом узлов данных по мере их запуска, введяALL STATUSв командной строке клиента управления. Эта команда вызывает отчет о запуске последовательности узлов данных, который должен выглядеть примерно так:ndb_mgm>
ALL STATUSConnected to Management Server at: localhost:1186 (using cleartext) Node 2: starting (Last completed phase 3) (mysql-9.2.0-ndb-9.2.0) Node 3: starting (Last completed phase 3) (mysql-9.2.0-ndb-9.2.0) Node 2: starting (Last completed phase 4) (mysql-9.2.0-ndb-9.2.0) Node 3: starting (Last completed phase 4) (mysql-9.2.0-ndb-9.2.0) Node 2: Started (version 9.2.0) Node 3: Started (version 9.2.0) ndb_mgm>ПримечаниеКоманды, введенные в клиенте управления, нечувствительны к регистру; мы используем прописные буквы в качестве канонической формы этих команд, но вы не обязаны соблюдать эту конвенцию при их вводе в клиент ndb_mgm. Дополнительную информацию см. в Разделе 25.6.1, «Команды в клиенте управления кластером NDB».
Вывод, полученный от
ALL STATUS, вероятно, будет отличаться от показанного здесь в зависимости от скорости запуска узлов данных, номера версии используемого вами программного обеспечения кластера NDB и других факторов. Важно то, что когда вы увидите, что оба узла данных запущены, вы готовы запустить узел SQL.Вы можете оставить ndb_mgm.exe запущенным; это не оказывает негативного влияния на производительность кластера NDB, и мы используем его на следующем шаге, чтобы проверить, подключен ли узел SQL к кластеру после его запуска.
-
На компьютере, назначенном в качестве хоста узла SQL, откройте окно консоли и перейдите к каталогу, где вы распаковали двоичные файлы кластера NDB (если вы следуете нашему примеру, это
C:\mysql\bin).Запустите узел SQL, вызвав mysqld.exe из командной строки, как показано здесь:
C:\mysql\bin>
mysqld --consoleПараметр
--consoleзаписывает журнальную информацию в консоль, что может быть полезно при возникновении проблем. (Когда вы убедитесь, что узел SQL работает удовлетворительно, вы можете остановить его и перезапустить без параметра--console, чтобы журналы записывались нормально.)В окне консоли, где запущен клиент управления (ndb_mgm.exe) на хосте узла управления, введите команду
SHOW, которая должна вывести вывод, подобный приведенному здесь:ndb_mgm>
SHOWConnected to Management Server at: localhost:1186 (using cleartext) Cluster Configuration --------------------- [ndbd(NDB)] 2 node(s) id=2 @198.51.100.30 (Version: 9.2.0-ndb-9.2.0, Nodegroup: 0, *) id=3 @198.51.100.40 (Version: 9.2.0-ndb-9.2.0, Nodegroup: 0) [ndb_mgmd(MGM)] 1 node(s) id=1 @198.51.100.10 (Version: 9.2.0-ndb-9.2.0) [mysqld(API)] 1 node(s) id=4 @198.51.100.20 (Version: 9.2.0-ndb-9.2.0)Вы также можете проверить, подключен ли узел SQL к кластеру NDB в клиенте mysql (mysql.exe) с помощью оператора
SHOW ENGINE NDB STATUS.
Теперь вы должны быть готовы работать с объектами базы данных и данными, используя движок хранения NDBCLUSTER кластера NDB. Дополнительную информацию и примеры см. в Разделе 25.3.5, «Пример кластера NDB с таблицами и данными».
Вы также можете установить ndb_mgmd.exe, ndbd.exe и ndbmtd.exe в качестве служб Windows. Информацию об этом см. в Разделе 25.3.2.4, «Установка процессов кластера NDB в качестве служб Windows».
© 2025 Oracle
Licensed under the GPLv2 License.