Spec-Zone .ru
спецификации, руководства, описания, API

17.3.2.1. MySQL Cluster Configuration: Основной Пример

Чтобы поддерживать MySQL Cluster, Вы должны будете обновить my.cnf как показано в следующем примере. Можно также определить эти параметры на командной строке, вызывая исполнимые программы.

Отметить

Варианты, показывавшие здесь, не должны быть перепутаны с теми, которые используются в config.ini глобальные конфигурационные файлы. Глобальные параметры конфигурации обсуждаются позже в этом разделе.

# my.cnf# example additions to my.cnf for MySQL Cluster# (valid in MySQL 5.6)# enable ndbcluster storage engine, and provide connectstring for# management server host (default port is 1186)[mysqld]ndbclusterndb-connectstring=ndb_mgmd.mysql.com# provide connectstring for management server host (default port: 1186)[ndbd]connect-string=ndb_mgmd.mysql.com# provide connectstring for management server host (default port: 1186)[ndb_mgm]connect-string=ndb_mgmd.mysql.com# provide location of cluster configuration file[ndb_mgmd]config-file=/etc/config.ini

(Для получения дополнительной информации по connectstrings см. Раздел 17.3.2.3, "MySQL Cluster Connectstring".)

# my.cnf# example additions to my.cnf for MySQL Cluster# (will work on all versions)# enable ndbcluster storage engine, and provide connectstring for management# server host to the default port 1186[mysqld]ndbclusterndb-connectstring=ndb_mgmd.mysql.com:1186
Важный

Как только Вы запустили процесс mysqld с NDBCLUSTER и ndb-connectstring параметры в [mysqld] в my.cnf файл как показано ранее, невозможно выполнить никого CREATE TABLE или ALTER TABLE операторы не фактически запустив кластер. Иначе, эти операторы перестанут работать с ошибкой. Это проектом.

Можно также использовать отдельное [mysql_cluster] раздел в кластере my.cnf файл для настроек, которые будут читаться и использоваться всеми исполнимыми программами:

# cluster-specific settings[mysql_cluster]ndb-connectstring=ndb_mgmd.mysql.com:1186

Для дополнительного NDB переменные, которые могут быть установлены в my.cnf файл, см. Раздел 17.3.4.3, "MySQL Cluster System Variables".

Глобальный конфигурационный файл MySQL Cluster условно называют config.ini (но это не требуется). Если нужно это читается ndb_mgmd при запуске и может быть помещено в любое расположение, которое может быть считано этим. Расположение и имя конфигурации определяются, используя --config-file=path_name с ndb_mgmd на командной строке. Эта опция не имеет никакого значения по умолчанию, и игнорируется, если ndb_mgmd использует кэш конфигурации.

Глобальный конфигурационный файл для MySQL Cluster использует формат INI, который состоит из разделов, которым предшествуют заголовки раздела (окруженный квадратными скобками), сопровождаемый соответствующими названиями параметра и значениями. Одно отклонение от стандартного формата INI - то, что название параметра и значение могут быть разделены двоеточием (":") так же как знак "равно" ("="); однако, знак "равно" предпочитается. Другое отклонение - то, что разделы не однозначно определяются именем раздела. Вместо этого уникальные разделы (такие как два различных узла того же самого типа) идентифицируются уникальным ID, определенным в качестве параметра в пределах раздела.

Значения по умолчанию определяются для большинства параметров, и могут также быть определены в config.ini. Чтобы создать раздел значения по умолчанию, просто добавьте слово default к имени раздела. Например, [ndbd] раздел содержит параметры, которые применяются к определенному узлу данных, тогда как [ndbd default] раздел содержит параметры, которые применяются ко всем узлам данных. Предположите, что все узлы данных должны использовать ту же самую емкость памяти данных. Чтобы сконфигурировать их всех, создайте [ndbd default] раздел, который содержит a DataMemory строка, чтобы определить емкость памяти данных.

Отметить

В некоторых более старых выпусках MySQL Cluster не было никакого значения по умолчанию для NoOfReplicas, который всегда должен был определяться явно в [ndbd default] раздел. Хотя у этого параметра теперь есть значение по умолчанию 2, который является рекомендуемой установкой в наиболее распространенных сценариях использования, этому все еще рекомендуют практику, чтобы установить эти параметры явно.

Глобальный конфигурационный файл должен определить компьютеры и узлы, включенные в кластер и на которых компьютерах располагаются эти узлы. Пример простого конфигурационного файла для кластера, состоящего из одного сервера управления, двух узлов данных и двух серверов MySQL, показывают здесь:

# file "config.ini" - 2 data nodes and 2 SQL nodes# This file is placed in the startup directory of ndb_mgmd (the# management server)# The first MySQL Server can be started from any host. The second# can be started only on the host mysqld_5.mysql.com[ndbd default]NoOfReplicas= 2DataDir= /var/lib/mysql-cluster[ndb_mgmd]Hostname= ndb_mgmd.mysql.comDataDir= /var/lib/mysql-cluster[ndbd]HostName= ndbd_2.mysql.com[ndbd]HostName= ndbd_3.mysql.com[mysqld][mysqld]HostName= mysqld_5.mysql.com
Отметить

Предыдущий пример предназначается как минимальная начальная конфигурация в целях ознакомления с MySQL Cluster, и почти наверняка должен не быть достаточным для производственных настроек. См. Раздел 17.3.2.2, "Рекомендуемый Запускающуюся Конфигурацию для MySQL Cluster", который обеспечивает более полную начальную конфигурацию в качестве примера.

У каждого узла есть свой собственный раздел в config.ini файл. Например, у этого кластера есть два узла данных, таким образом, предыдущий конфигурационный файл содержит два [ndbd] разделы, определяющие эти узлы.

Отметить

Не помещайте комментарии к той же самой строке как заголовок раздела в config.ini файл; это заставляет сервер управления не запускаться, потому что он не может проанализировать конфигурационный файл в таких случаях.

Разделы config.ini Файл

Есть шесть различных разделов, которые можно использовать в config.ini конфигурационный файл, как описано в следующем списке:

Можно определить default значения для каждого раздела. Все названия параметра Кластера являются нечувствительными к регистру, который отличается от параметров, определенных в my.cnf или my.ini файлы.