Spec-Zone.ru › MySQL 8.4

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 сервера управления.

  • Для обратной совместимости доступны два других варианта с тем же синтаксисом:

    1. Установите переменную среды NDB_CONNECTSTRING, содержащую строку подключения.

      Это следует считать устаревшим и не использовать в новых установках.

    2. Запишите строку подключения для каждого исполняемого файла в текстовый файл с именем Ndb.cfg и поместите этот файл в каталог запуска исполняемого файла.

      Использование этого файла устарело в NDB 8.4.3; ожидается, что он будет удалён в будущих выпусках MySQL Cluster.

Рекомендуемый метод указания строки подключения — установка её в командной строке или в файле конфигурации my.cnf для каждого исполняемого файла.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/mysql-cluster-connection-strings.html

Spec-Zone.ru

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