25.4.3.3 Строки подключения к кластеру NDB
За исключением сервера управления кластером NDB (ndb_mgmd), каждый узел, входящий в состав кластера NDB, требует строки подключения, указывающей местоположение сервера управления. Эта строка подключения используется для установления соединения с сервером управления, а также для выполнения других задач в зависимости от роли узла в кластере. Синтаксис строки подключения следующий:
[nodeid=node_id, ]host-definition[, host-definition[, ...]]
host-definition:
host_name[:port_number]
node_id — целое число, большее или равное 1, которое идентифицирует узел в config.ini. host_name — строка, представляющая действительное имя хоста или IP-адрес в Интернете. port_number — целое число, обозначающее номер порта TCP/IP.
example 1 (long): "nodeid=2,myhost1:1100,myhost2:1100,198.51.100.3:1200"
example 2 (short): "myhost1"
localhost:1186 используется в качестве значения строки подключения по умолчанию, если оно не указано. Если port_num опущено из строки подключения, порт по умолчанию равен 1186. Этот порт должен всегда быть доступен в сети, так как он был назначен IANA для этой цели (подробности см. в http://www.iana.org/assignments/port-numbers).
Указав несколько определений хостов, можно назначить несколько резервных серверов управления. Узел данных или API кластера NDB пытается связаться с последовательными серверами управления на каждом хосте в указанном порядке до тех пор, пока не будет установлено успешное соединение.
Также в строке подключения можно указать один или несколько адресов привязки, которые будут использоваться узлами, имеющими несколько сетевых интерфейсов, для подключения к серверам управления. Адрес привязки состоит из имени хоста или сетевого адреса и необязательного номера порта. Этот расширенный синтаксис для строк подключения показан здесь:
[nodeid=node_id, ]
[bind-address=host-definition, ]
host-definition[; bind-address=host-definition]
host-definition[; bind-address=host-definition]
[, ...]]
host-definition:
host_name[:port_number]
Если в строке подключения используется один адрес привязки перед указанием каких-либо хостов управления, то этот адрес используется в качестве значения по умолчанию для подключения к любому из них (если не переопределено для конкретного сервера управления; пример см. ниже в этом разделе). Например, следующая строка подключения заставляет узел использовать 198.51.100.242 независимо от сервера управления, к которому он подключается:
bind-address=198.51.100.242, poseidon:1186, perch:1186
Если адрес привязки указан после определения хоста управления, то он используется только для подключения к этому узлу управления. Рассмотрим следующую строку подключения:
poseidon:1186;bind-address=localhost, perch:1186;bind-address=198.51.100.242
В этом случае узел использует localhost для подключения к серверу управления, работающему на хосте с именем poseidon, и 198.51.100.242 для подключения к серверу управления, работающему на хосте с именем perch.
Можно указать адрес привязки по умолчанию и затем переопределить этот адрес для одного или нескольких конкретных хостов управления. В следующем примере localhost используется для подключения к серверу управления, работающему на хосте poseidon; поскольку 198.51.100.242 указан первым (перед любыми определениями серверов управления), он является адресом привязки по умолчанию и используется для подключения к серверам управления на хостах perch и orca:
bind-address=198.51.100.242,poseidon:1186;bind-address=localhost,perch:1186,orca:2200
Существует несколько способов указания строки подключения:
У каждого исполняемого файла есть собственный параметр командной строки, позволяющий указать сервер управления при запуске. (См. документацию по соответствующему исполняемому файлу.)
Также можно установить строку подключения для всех узлов кластера сразу, поместив её в раздел
[mysql_cluster]в файле конфигурацииmy.cnfсервера управления.-
Для обратной совместимости доступны два других варианта с тем же синтаксисом:
-
Установите переменную среды
NDB_CONNECTSTRING, содержащую строку подключения.Это следует считать устаревшим и не использовать в новых установках.
-
Запишите строку подключения для каждого исполняемого файла в текстовый файл с именем
Ndb.cfgи поместите этот файл в каталог запуска исполняемого файла.Использование этого файла устарело в NDB 8.4.3; ожидается, что он будет удалён в будущих выпусках MySQL Cluster.
-
Рекомендуемый метод указания строки подключения — установка её в командной строке или в файле конфигурации my.cnf для каждого исполняемого файла.
© 2025 Oracle
Licensed under the GPLv2 License.