21.2.4.4 将 NDB 群集进程安装为 Windows 服务
一旦满足了 NDB Cluster 的期望,就可以将 Management 节点和数据节点安装为 Windows 服务,以便在 Windows 启动或停止时自动启动和停止这些进程。这也使得可以使用适当的 SC START 和 SC STOP 命令或使用 Windows 图形 Services Util 从命令行控制这些过程。也可以使用 NET START 和 NET STOP 命令。
通常必须使用对系统具有 Management 员权限的帐户来完成将程序作为 Windows 服务安装。
要将 Management 节点作为服务安装在 Windows 上,请使用--install选项从托管 Management 节点的计算机上的命令行调用ndb_mgmd.exe,如下所示:
C:\> C:\mysql\bin\ndb_mgmd.exe --install
Installing service 'NDB Cluster Management Server'
as '"C:\mysql\bin\ndbd.exe" "--service=ndb_mgmd"'
Service successfully installed.
Important
将 NDB 群集程序安装为 Windows 服务时,应始终指定完整路径;否则,服务安装可能会失败,并显示以下错误:系统找不到指定的文件。
必须先使用--install选项,然后再为ndb_mgmd.exe指定其他选项。但是,最好在选项文件中指定此类选项。如果您的选项文件不在ndb_mgmd.exe --help的输出中所示的默认位置之一,则可以使用--config-file选项指定位置。
现在,您应该能够像这样启动和停止 Management 服务器:
C:\> SC START ndb_mgmd
C:\> SC STOP ndb_mgmd
Note
如果使用 NET 命令,则还可以使用描述性名称作为 Windows 服务启动或停止 Management 服务器,如下所示:
C:\> NET START 'NDB Cluster Management Server'
The NDB Cluster Management Server service is starting.
The NDB Cluster Management Server service was started successfully.
C:\> NET STOP 'NDB Cluster Management Server'
The NDB Cluster Management Server service is stopping..
The NDB Cluster Management Server service was stopped successfully.
通常,在安装服务时指定简短的服务名称或允许使用默认服务名称,然后在启动或停止服务时引用该名称通常会更简单。要指定ndb_mgmd
以外的服务名称,请将其附加到--install选项,如本示例所示:
C:\> C:\mysql\bin\ndb_mgmd.exe --install=mgmd1
Installing service 'NDB Cluster Management Server'
as '"C:\mysql\bin\ndb_mgmd.exe" "--service=mgmd1"'
Service successfully installed.
现在,您应该可以使用指定的名称启动或停止服务,如下所示:
C:\> SC START mgmd1
C:\> SC STOP mgmd1
要删除 Management 节点服务,请使用 SC DELETE * service_name
*:
C:\> SC DELETE mgmd1
或者,使用--remove选项调用ndb_mgmd.exe,如下所示:
C:\> C:\mysql\bin\ndb_mgmd.exe --remove
Removing service 'NDB Cluster Management Server'
Service successfully removed.
如果使用默认名称以外的其他服务名称安装了该服务,请将该服务名称作为ndb_mgmd.exe --remove选项的值传递,如下所示:
C:\> C:\mysql\bin\ndb_mgmd.exe --remove=mgmd1
Removing service 'mgmd1'
Service successfully removed.
使用ndbd.exe(或ndbmtd.exe)的--install选项,可以类似的方式将 NDB 群集数据节点进程作为 Windows 服务安装,如下所示:
C:\> C:\mysql\bin\ndbd.exe --install
Installing service 'NDB Cluster Data Node Daemon' as '"C:\mysql\bin\ndbd.exe" "--service=ndbd"'
Service successfully installed.
现在,您可以启动或停止数据节点,如以下示例所示:
C:\> SC START ndbd
C:\> SC STOP ndbd
要删除数据节点服务,请使用 SC DELETE * service_name
*:
C:\> SC DELETE ndbd
或者,使用--remove选项调用ndbd.exe,如下所示:
C:\> C:\mysql\bin\ndbd.exe --remove
Removing service 'NDB Cluster Data Node Daemon'
Service successfully removed.
与ndb_mgmd.exe(和mysqld.exe)一样,在将ndbd.exe作为 Windows 服务安装时,还可以为该服务指定一个名称作为--install的值,然后在启动或停止该服务时使用它,如下所示:
C:\> C:\mysql\bin\ndbd.exe --install=dnode1
Installing service 'dnode1' as '"C:\mysql\bin\ndbd.exe" "--service=dnode1"'
Service successfully installed.
C:\> SC START dnode1
C:\> SC STOP dnode1
如果在安装数据节点服务时指定了服务名称,则在删除它时也可以使用该名称,如下所示:
C:\> SC DELETE dnode1
或者,您可以将服务名称作为ndbd.exe
--remove选项的值传递,如下所示:
C:\> C:\mysql\bin\ndbd.exe --remove=dnode1
Removing service 'dnode1'
Service successfully removed.
使用mysqld --install
, SC START , SC STOP 和 以类似的方式将 SQL 节点作为 Windows 服务安装,启动服务,停止服务以及删除服务.SC DELETE (或mysqld --remove)。 NET 命令也可以用来启动或停止服务。有关更多信息,请参见第 2.3.4.8 节“将 MySQL 作为 Windows 服务启动”。