Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  Initial Startup of NDB Cluster on Windows

25.3.2.3 在 Windows 上首次启动 NDB 集群

在 NDB 集群可执行文件和所需配置文件都准备好后,启动集群的初始步骤非常简单:只需要在每个节点上单独启动 NDB 集群可执行文件。管理节点应该首先启动,然后是数据节点,最后是 SQL 节点。

  1. 在管理节点主机上,从命令行中输入以下命令来启动管理节点进程。输出应类似于以下所示:

    C:\mysql\bin> ndb_mgmd
    2010-06-23 07:53:34 [MgmtSrvr] INFO -- NDB Cluster Management Server. mysql-8.4.0-ndb-8.4.0
    2010-06-23 07:53:34 [MgmtSrvr] INFO -- Reading cluster configuration from 'config.ini'

    管理节点进程将继续将日志信息打印到控制台。这是正常的,因为管理节点不是作为 Windows 服务运行的。如果您在 Unix-类平台上使用 NDB 集群(例如 Linux),可能会注意到管理节点在 Windows 上的默认行为与 Unix 系统上的相反。同样,NDB 集群数据节点进程在 Windows 上也具有相同的行为。因此,不要关闭ndb_mgmd.exe运行的窗口;这样做将杀死管理节点进程。(见第 25.3.2.4 节,“安装 NDB 集群进程作为 Windows 服务”,其中我们展示了如何将 NDB 集群进程安装和运行为 Windows 服务。)

    需要的-f选项告诉管理节点在哪里找到全局配置文件(config.ini)。该选项的长形式是--config-file

    Important

    NDB集群管理节点将从config.ini中读取配置数据,并将其缓存在内存中;一旦创建了配置缓存,它便会忽略后续启动时的config.ini文件,除非强制它重新读取该文件。这意味着,如果管理节点由于在该文件中的错误而无法启动,您必须在更正错误后使管理节点重新读取config.ini。您可以通过使用ndb_mgmd.exe命令行选项--reload--initial来刷新配置缓存。任何一个选项都可以用来刷新配置缓存。

    在管理节点的my.ini文件中,不需要或不建议使用这两个选项。

  2. 在每个数据节点主机上,运行以下命令以启动数据节点进程:

    C:\mysql\bin> ndbd
    2010-06-23 07:53:46 [ndbd] INFO -- Configuration fetched from 'localhost:1186', generation: 1

    在每种情况下,数据节点进程的输出第一行都应该类似于前面的示例,并且后续还有其他日志输出。与管理节点进程一样,这是正常的,因为数据节点不是作为 Windows 服务运行的。因此,不要关闭在其中运行数据节点进程的控制台窗口;这样将杀死ndbd.exe。 (有关更多信息,请见第25.3.2.4节,“Installing NDB Cluster Processes as Windows Services”。)

  3. 不要现在启动 SQL 节点;直到数据节点完成启动,这可能需要一些时间。在管理节点主机上,打开一个新的控制台窗口,然后启动 NDB 集群管理客户端ndb_mgm.exe,它应该在管理节点主机上的C:\mysql\bin目录下。 (不要尝试重新使用ndb_mgmd.exe的控制台窗口,通过键入CTRL+C,因为这将杀死管理节点。) 输出结果应该类似于以下所示:

    C:\mysql\bin> ndb_mgm
    -- NDB Cluster -- Management Client --
    ndb_mgm>

    当出现提示符ndb_mgm>时,这意味着管理客户端已经准备好接收 NDB 集群管理命令。您可以通过输入ALL STATUS在管理客户端提示符下观察数据节点的状态。这条命令将生成一个运行中的数据节点启动顺序报告,这个报告可能如下所示:

    ndb_mgm> ALL STATUS
    Connected to Management Server at: localhost:1186 (using cleartext)
    Node 2: starting (Last completed phase 3) (mysql-8.4.0-ndb-8.4.0)
    Node 3: starting (Last completed phase 3) (mysql-8.4.0-ndb-8.4.0)
    
    Node 2: starting (Last completed phase 4) (mysql-8.4.0-ndb-8.4.0)
    Node 3: starting (Last completed phase 4) (mysql-8.4.0-ndb-8.4.0)
    
    Node 2: Started (version 8.4.0)
    Node 3: Started (version 8.4.0)
    
    ndb_mgm>
    Note

    在管理客户端中输入的命令不区分大小写;我们使用大写字母作为这些命令的标准形式,但您不需要遵循这个惯例输入它们到ndb_mgm客户端中。更多信息,请见第25.6.1节,“NDB 集群管理客户端命令”

    ALL STATUS的输出结果可能因数据节点启动速度、NDB 集群软件版本号和其他因素而异。重要的是,当您看到两个数据节点都已经启动时,您就可以开始 SQL 节点了。

    您可以保持ndb_mgm.exe运行,因为它对 NDB 集群的性能没有负面影响,我们在下一步中使用它来验证 SQL 节点是否连接到集群后启动。

  4. 在 SQL 节点主机计算机上,打开一个控制台窗口,并导航到解压 NDB 集群二进制文件的目录(如果您遵循我们的示例,这是C:\mysql\bin)。

    使用命令行启动 SQL 节点,方法如下所示:

    C:\mysql\bin> mysqld --console

    使用mysqld.exe命令,添加--console选项,以便在控制台中记录日志信息,这可以在出现问题时非常有帮助。 (一旦您确定 SQL 节点运行正常,可以停止它并重新启动它,而不使用--console选项,以便日志记录恢复正常。)

    在管理节点主机上运行的管理客户端(ndb_mgm.exe)控制台窗口中,输入SHOW命令,这应该产生与以下类似的输出:

    ndb_mgm> SHOW
    Connected to Management Server at: localhost:1186 (using cleartext)
    Cluster Configuration
    ---------------------
    [ndbd(NDB)]     2 node(s)
    id=2    @198.51.100.30  (Version: 8.4.0-ndb-8.4.0, Nodegroup: 0, *)
    id=3    @198.51.100.40  (Version: 8.4.0-ndb-8.4.0, Nodegroup: 0)
    
    [ndb_mgmd(MGM)] 1 node(s)
    id=1    @198.51.100.10  (Version: 8.4.0-ndb-8.4.0)
    
    [mysqld(API)]   1 node(s)
    id=4    @198.51.100.20  (Version: 8.4.0-ndb-8.4.0)

    您也可以使用mysql.exe客户端(mysql.exe)验证 SQL 节点是否连接到 NDB 集群,使用SHOW ENGINE NDB STATUS语句。

现在,您已经准备好使用NDB集群的NDBCLUSTER存储引擎来处理数据库对象和数据。请查看第25.3.5节,“NDB集群示例:表和数据”,了解更多信息和示例。

您还可以将ndb_ mgmd.exendbd.exendbmtd.exe安装为Windows服务。有关如何执行此操作的信息,请查看第25.3.2.4节,“将NDB集群进程安装为Windows服务”