Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  ...  /  Initial Configuration of NDB Cluster

25.3.3 NDB 集群的初始配置

在本节中,我们讨论了手动配置已安装的 NDB 集群,方法是创建和编辑配置文件。

对于我们的四节点、四主机 NDB 集群(见 集群节点和主机计算机),我们需要为每个节点主机编写四个配置文件。

  • 每个数据节点或 SQL 节点都需要一个 my.cnf 文件,该文件提供了两个信息:一个连接字符串,告诉节点在哪里找到管理节点,以及一行告诉 MySQL 服务器在该主机(托管数据节点的机器)启用 NDBCLUSTER 存储引擎。

    有关连接字符串的更多信息,请参阅 第 25.4.3.3 节,“NDB 集群连接字符串”

  • 管理节点需要一个 config.ini 文件,告诉它如何维护碎片副本、在每个数据节点上分配多少内存用于数据和索引、在哪里找到数据节点、在每个数据节点上将数据保存到磁盘的位置,以及在哪里找到任何 SQL 节点。

配置数据节点和 SQL 节点。 数据节点所需的 my.cnf 文件相当简单。配置文件应该位于 /etc 目录中,可以使用任何文本编辑器编辑。(如果文件不存在,请创建它。)例如:

$> vi /etc/my.cnf
Note

我们这里展示了使用 vi 创建文件,但任何文本编辑器都可以正常工作。

对于我们的示例设置,每个数据节点和 SQL 节点的 my.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 节点执行相同的操作。

Important

一旦您使用 ndbclusterndb-connectstring 参数在 [mysqld][mysql_cluster] 部分的 my.cnf 文件中启动了 mysqld 进程,就不能执行任何 CREATE TABLEALTER TABLE 语句,除非您已经启动了集群。否则,这些语句将失败并显示错误。这是设计的结果。

配置管理节点。 配置管理节点的第一步是创建配置文件所在的目录,然后创建文件本身。例如(以 root 身份运行):

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

对于我们的示例设置,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)
Note

可以从 https://dev.mysql.com/doc/index-other.html 下载 world 数据库。

在创建了所有配置文件并指定了这些最小选项后,您就可以继续启动集群并验证所有进程是否正在运行。我们将在 第 25.3.4 节,“NDB 集群的初始启动” 中讨论如何执行这些操作。

有关 NDB 集群配置参数的更多信息,请参阅 第 25.4.3 节,“NDB 集群配置文件”第 25.4 节,“NDB 集群配置”。有关 NDB 集群备份配置,请参阅 第 25.6.8.3 节,“NDB 集群备份配置”

Note

集群管理节点的默认端口是 1186;数据节点的默认端口是 2202。然而,集群可以自动分配数据节点的可用端口。