文档首页
MySQL 8.4 参考手册
相关文档 下载本手册

MySQL 8.4 参考手册  /  ...  /  NDB 集群配置文件

25.4.3 NDB 集群配置文件

配置 NDB 集群需要使用两个文件

  • my.cnf:指定所有 NDB 集群可执行文件的选项。您应该熟悉在之前使用 MySQL 时使用的此文件,集群中运行的每个可执行文件都必须可以访问此文件。

  • config.ini:此文件,有时称为 全局配置文件,仅由 NDB 集群管理服务器读取,然后管理服务器将其中包含的信息分发给参与集群的所有进程。config.ini 包含集群中涉及的每个节点的描述。这包括数据节点的配置参数以及集群中所有节点之间连接的配置参数。有关此文件中可以出现的章节以及每个章节中可以放置哪些配置参数的快速参考,请参见 config.ini 文件的章节

配置数据的缓存。 NDB 使用 有状态配置。管理服务器不会每次重新启动时都读取全局配置文件,而是在第一次启动时缓存配置,之后,仅当满足以下条件之一时才会读取全局配置文件:

  • 使用 --initial 选项启动管理服务器。 使用 --initial 选项时,将重新读取全局配置文件,删除任何现有的缓存文件,并且管理服务器创建新的配置缓存。

  • 使用 --reload 选项启动管理服务器。 --reload 选项使管理服务器将其缓存与全局配置文件进行比较。如果它们不同,则管理服务器会创建一个新的配置缓存;任何现有的配置缓存都将保留,但不使用。如果管理服务器的缓存和全局配置文件包含相同的配置数据,则使用现有的缓存,并且不创建新的缓存。

  • 使用 --config-cache=FALSE 启动管理服务器。 这将禁用默认启用的 --config-cache 选项,并且可以用于强制管理服务器完全绕过配置缓存。在这种情况下,管理服务器会忽略任何可能存在的缓存文件,始终从 config.ini 文件中读取其配置数据。

  • 找不到配置缓存。 在这种情况下,管理服务器将读取全局配置文件,并创建一个包含与文件中相同的配置数据的缓存。

配置缓存文件。 默认情况下,管理服务器会在 MySQL 安装目录中名为 mysql-cluster 的目录中创建配置缓存文件。(如果您在 Unix 系统上从源代码构建 NDB 集群,则默认位置为 /usr/local/mysql-cluster。)这可以在运行时通过使用 --configdir 选项启动管理服务器来覆盖。配置缓存文件是二进制文件,其命名模式为 ndb_node_id_config.bin.seq_id,其中 node_id 是管理服务器在集群中的节点 ID,seq_id 是缓存标识符。缓存文件使用 seq_id 按创建顺序进行编号。管理服务器使用由 seq_id 确定的最新缓存文件。

注意

可以通过删除后面的配置缓存文件,或者通过重命名较早的缓存文件以使其具有更高的 seq_id 来回滚到以前的配置。但是,由于配置缓存文件是以二进制格式编写的,因此您不应该尝试手动编辑其内容。

有关 NDB 集群管理服务器的 --configdir--config-cache--initial--reload 选项的更多信息,请参见 第 25.5.4 节,“ndb_mgmd - NDB 集群管理服务器守护程序”

我们正在不断改进 NDB 集群配置并尝试简化此过程。尽管我们努力保持向后兼容性,但有时可能会引入不兼容的更改。在这种情况下,如果更改不向后兼容,我们会尽量提前通知 NDB 集群用户。如果您发现此类更改并且我们没有记录,请按照 第 1.6 节,“如何报告错误或问题” 中的说明在 MySQL 错误数据库中报告。