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

17.3.1. Быстрая Тестовая Установка MySQL Cluster

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

Во-первых, Вы должны создать каталог конфигурации такой как /var/lib/mysql-cluster, выполняя следующую команду как система root пользователь:

shell> mkdir
        /var/lib/mysql-cluster

В этом каталоге создайте названный файл config.ini это содержит следующую информацию. Замена соответствующие значения для HostName и DataDir по мере необходимости для Вашей системы.

# file "config.ini" - showing minimal setup consisting of 1 data node,# 1 management server, and 3 MySQL servers.# The empty default sections are not required, and are shown only for# the sake of completeness.# Data nodes must provide a hostname but MySQL Servers are not required# to do so.# If you don't know the hostname for your machine, use localhost.# The DataDir parameter also has a default value, but it is recommended to# set it explicitly.# Note: [db], [api], and [mgm] are aliases for [ndbd], [mysqld], and [ndb_mgmd],# respectively. [db] is deprecated and should not be used in new installations.[ndbd default]NoOfReplicas= 1[mysqld  default][ndb_mgmd default][tcp default][ndb_mgmd]HostName= myhost.example.com[ndbd]HostName= myhost.example.comDataDir= /var/lib/mysql-cluster[mysqld][mysqld][mysqld]

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

shell> cd /var/lib/mysql-clustershell> ndb_mgmd

Затем запустите единственный узел данных, работая ndbd:

shell> ndbd

Для параметров командной строки, которые могут использоваться, запускаясь ndbd, см. Раздел 17.4.25, "Опции, Характерные для MySQL Cluster Programs — Опции, Характерные для MySQL Cluster Programs".

По умолчанию ndbd ищет сервер управления в localhost на порту 1186.

Отметить

Если Вы установили MySQL от двоичного файла tarball, Вы должны будете определить путь ndb_mgmd и ndbd серверов явно. (Обычно, они будут найдены в /usr/local/mysql/bin.)

Наконец, измените расположение на каталог данных MySQL (обычно /var/lib/mysql или /usr/local/mysql/data), и удостоверьтесь что my.cnf файл содержит опцию, необходимую, чтобы включить механизму хранения NDB:

[mysqld]ndbcluster

Можно теперь запустить сервер MySQL как обычно:

shell> mysqld_safe --user=mysql &

Ожидайте момент, чтобы удостовериться, что сервер MySQL работает должным образом. Если Вы видите уведомление mysql ended, проверьте сервер .err файл, чтобы узнать, что пошло не так, как надо.

Если все до сих пор подходило, теперь можно начать использовать кластер. Соединитесь с сервером и проверьте что NDBCLUSTER механизм хранения включается:

shell> mysqlWelcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 1 to server version: 5.6.13Type 'help;' or '\h' for help. Type '\c' to clear the buffer.mysql> SHOW ENGINES\G...*************************** 12. row ***************************Engine: NDBCLUSTERSupport: YESComment: Clustered, fault-tolerant, memory-based tables*************************** 13. row ***************************Engine: NDBSupport: YESComment: Alias for NDBCLUSTER...

Номера строк, показанные в предыдущем выводе в качестве примера, могут отличаться от показанных на Вашей системе, в зависимости от того, как Ваш сервер конфигурируется.

Попытайтесь создать NDBCLUSTER таблица:

shell> mysqlmysql> USE test;Database changedmysql> CREATE
        TABLE ctest (i INT) ENGINE=NDBCLUSTER;Query OK, 0 rows affected (0.09 sec)mysql> SHOW CREATE TABLE ctest \G*************************** 1. row ***************************       Table: ctestCreate Table: CREATE TABLE `ctest` (  `i` int(11) default NULL) ENGINE=ndbcluster DEFAULT CHARSET=latin11 row in set (0.00 sec)

Чтобы проверить, что Ваши узлы были установлены должным образом, запустите клиент управления:

shell> ndb_mgm

Используйте команду SHOW изнутри клиента управления, чтобы получить отчет относительно состояния кластера:

ndb_mgm> SHOWCluster Configuration---------------------[ndbd(NDB)]     1 node(s)id=2    @127.0.0.1  (Version: 5.6.11-ndb-7.3.3, Nodegroup: 0, Master)[ndb_mgmd(MGM)] 1 node(s)id=1    @127.0.0.1  (Version: 5.6.11-ndb-7.3.3)[mysqld(API)]   3 node(s)id=3    @127.0.0.1  (Version: 5.6.11-ndb-7.3.3)id=4 (not connected, accepting connect from any host)id=5 (not connected, accepting connect from any host)

В этой точке Вы успешно установили рабочий MySQL Cluster. Можно теперь хранить данные в кластере при использовании любой таблицы, составленной с ENGINE=NDBCLUSTER или его псевдоним ENGINE=NDB.