### 23.3.3 NDB 集群的初始配置

[](<>)[](<>)[](<>)

在本节中，我们通过创建和编辑配置文件来讨论已安装的 NDB Cluster 的手动配置。

对于我们的四节点四主机 NDB 集群（请参阅[集群节点和主机](mysql-cluster-installation.html#mysql-cluster-install-nodes-hosts))，需要编写四个配置文件，每个节点主机一个。

-   每个数据节点或 SQL 节点都需要一个`我的.cnf`提供两条信息的文件：一个连接字符串，告诉节点在哪里可以找到管理节点，以及一条告诉该主机（托管数据节点的机器）上的 MySQL 服务器启用[`NDBCLUSTER`](mysql-cluster.html)存储引擎。

    有关连接字符串的更多信息，请参阅[第 23.4.3.3 节，“NDB 集群连接字符串”](mysql-cluster-connection-strings.html).

-   管理节点需要一个`配置文件`文件告诉它要维护多少片段副本，为每个数据节点上的数据和索引分配多少内存，在哪里可以找到数据节点，在每个数据节点上将数据保存到磁盘的位置，以及在哪里可以找到任何 SQL 节点。

**配置数据节点和 SQL 节点。**这`我的.cnf`数据节点所需的文件相当简单。配置文件应该位于`/等等`目录，可以使用任何文本编辑器进行编辑。（如果文件不存在，则创建该文件。）例如：

```
$> vi /etc/my.cnf
```

笔记

我们展示**六**在这里用于创建文件，但任何文本编辑器都应该可以正常工作。

对于我们示例设置中的每个数据节点和 SQL 节点，`我的.cnf`应该是这样的：

```
[mysqld]
# Options for mysqld process:
ndbcluster                      # run NDB storage engine

[mysql_cluster]
# Options for NDB Cluster processes:
ndb-connectstring=198.51.100.10  # location of management server
```

输入上述信息后，保存该文件并退出文本编辑器。对托管数据节点“A”、数据节点“B”和 SQL 节点的机器执行此操作。

重要的

一旦你开始了[**mysqld**](mysqld.html)过程与`ndbcluster`和`ndb 连接字符串`中的参数`[mysqld]`和`[mysql_cluster]`的部分`我的.cnf`文件如前所示，你不能执行任何[`创建表`](create-table.html)要么[`更改表`](alter-table.html)没有实际启动集群的语句。否则，这些语句将失败并出现错误。这是设计使然。

**配置管理节点。**配置管理节点的第一步是创建可以找到配置文件的目录，然后创建文件本身。例如（运行为`根`):

```
$> mkdir /var/lib/mysql-cluster
$> cd /var/lib/mysql-cluster
$> vi config.ini
```

对于我们的代表性设置，`配置文件`文件应如下所示：

```
[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2    # Number of fragment replicas
DataMemory=98M    # How much memory to allocate for data storage

[ndb_mgmd]
# Management process options:
HostName=198.51.100.10          # Hostname or IP address of management node
DataDir=/var/lib/mysql-cluster  # Directory for management node log files

[ndbd]
# Options for data node "A":
                                # (one [ndbd] section per data node)
HostName=198.51.100.30          # Hostname or IP address
NodeId=2                        # Node ID for this data node
DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[ndbd]
# Options for data node "B":
HostName=198.51.100.40          # Hostname or IP address
NodeId=3                        # Node ID for this data node
DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[mysqld]
# SQL node options:
HostName=198.51.100.20          # Hostname or IP address
                                # (additional mysqld connections can be
                                # specified for this node for various
                                # purposes such as running ndb_restore)
```

笔记

这`世界`数据库可以从<https://dev.mysql.com/doc/index-other.html>.

在创建了所有配置文件并指定了这些最小选项之后，您就可以继续启动集群并验证所有进程是否正在运行。我们讨论如何在[第 23.3.4 节，“NDB 集群的初始启动”](mysql-cluster-install-first-start.html).

有关可用 NDB Cluster 配置参数及其用途的更多详细信息，请参阅[第 23.4.3 节，“NDB 集群配置文件”](mysql-cluster-config-file.html)， 和[第 23.4 节，“NDB 集群的配置”](mysql-cluster-configuration.html).有关与进行备份相关的 NDB Cluster 配置，请参阅[第 23.6.8.3 节，“NDB 集群备份的配置”](mysql-cluster-backup-configuration.html).

笔记

Cluster 管理节点的默认端口是 1186；数据节点的默认端口是 2202。但是，集群可以从已经空闲的数据节点中自动为数据节点分配端口。
