除了中央配置文件之外,还可以通过管理客户端提供的命令行界面来控制集群ndb_mgm.这是运行集群的主要管理接口。
中给出了事件日志的命令第21.5.3节“NDB集群中生成的事件报告”;中提供了创建备份和从中恢复的命令第21.5.8节“新db集群在线备份”.
在MySQL集群管理器中使用ndb_mgm。MySQL集群管理器处理启动和停止进程,并在内部跟踪它们的状态,所以没有必要使用它ndb_mgm为MySQL集群管理器控制下的NDB集群执行这些任务。建议不使用ndb_mgmNDB Cluster发行版附带的命令行客户端,用于执行启动或停止节点的操作。这些包括但不限于开始
,停止
,重新启动
,关闭
命令。有关更多信息,请参见MySQL集群管理器进程命令.
管理客户机具有以下基本命令。在下面的清单中,node_id
表示数据节点ID或关键字所有
,这表示该命令应该应用于集群的所有数据节点。
显示所有可用命令的信息。
连接到由连接字符串指示的管理服务器。如果客户端已经连接到此服务器,则客户端将重新连接。
显示集群状态信息。可能的节点状态值包括
未知的
,NO_CONTACT
,NOT_STARTED
,开始
,开始
,SHUTTING_DOWN
,重新启动
.此命令的输出还指示集群何时处于单用户模式(status . mode)单用户模式
).使由标识的数据节点联机
node_id
(或所有数据节点)。所有的开始
仅对所有数据节点有效,对管理节点无影响。重要的要使用此命令使数据节点联机,数据节点必须已经使用
——nostart
或- n
.停止由标识的数据或管理节点
node_id
.请注意所有的停止
只能停止所有数据节点,不影响管理节点。受此命令影响的节点与集群及其关联节点断开连接ndbd或ndb_mgmd过程终止。
的
——一个
选项将立即停止节点,而无需等待任何挂起事务的完成。通常情况下,
停止
如果结果将导致集群不完整,则失败。的- f
选项强制关闭节点而不检查此选项。如果使用此选项,并且结果是一个不完整的集群,则集群立即关闭。警告的使用
——一个
选项还禁用时以其他方式执行的安全检查停止
调用以确保停止节点不会导致集群不完整。换句话说,在使用——一个
选择与停止
命令,因为该选项使集群可能被迫关闭,因为集群不再有存储在中的所有数据的完整副本NDB
.node_id
RESTART [-n] [-i] [-a] [-f]重新启动由标识的数据节点
node_id
(或所有数据节点)。使用
-我
选项重新启动
使数据节点执行一次初始重启;即,删除并重新创建节点的文件系统。其效果与停止数据节点进程,然后使用ndbd——初始
从系统外壳。请注意使用此选项时,备份文件和磁盘数据文件不会被删除。
使用
- n
选项导致重新启动数据节点进程,但直到适当的开始
命令发出。此选项的效果与停止数据节点,然后使用ndbd——nostart
或ndbd- n
从系统外壳。使用
——一个
导致依赖于此节点的所有当前事务中止。当节点重新加入集群时,不进行GCP检查。通常情况下,
重新启动
如果使节点脱机将导致集群不完整,则失败。的- f
选项强制节点重新启动而不检查此选项。如果使用此选项,并且结果是一个不完整的集群,则整个集群将重新启动。为标识的数据节点显示状态信息
node_id
(或针对所有数据节点)。此命令的输出还指示集群何时处于单用户模式。
显示类型的报告
报表类型
为标识的数据节点node_id
,或用于所有使用的数据节点所有
.目前,有三个公认的值
报表类型
:BackupStatus
提供关于正在进行的集群备份的状态报告MemoryUsage
显示每个数据节点正在使用的数据内存和索引内存,如下例所示:ndb_mgm> ALL REPORT MEMORY节点1:数据占用率为5%(总共3200中的177个32K页)节点1:索引占用率为0%(总共12832中的108个8K页)节点2:数据占用率为5%(总共3200中的177个32K页)节点2:索引占用率为0%(总共12832中的108个8K页)
此信息也可从
ndbinfo.memoryusage
表格事件日志
从一个或多个数据节点的事件日志缓冲区报告事件。
报表类型
不区分大小写,”模糊”;为MemoryUsage
,你可以使用内存
(如上例所示),内存
,或甚至简单地MEM
(或mem
).你可以使用缩写词BackupStatus
以类似的方式。进入单用户模式,其中只有由节点ID标识的MySQL服务器
node_id
允许访问数据库。退出单用户模式,启用所有SQL节点(即所有正在运行的节点)mysqldProcesses)访问数据库。
请注意它是可以使用的
退出单用户模式
即使不是在单用户模式下,尽管该命令在这种情况下没有效果。终止管理客户端。
该命令不影响连接到集群的所有节点。
关闭所有集群数据节点和管理节点。要在完成此操作后退出管理客户端,请使用
退出
或辞职
.这个命令是不关闭连接到集群的所有SQL节点或API节点。
创建一个新的NDB集群节点组,并将数据节点加入该节点组。
该命令用于在NDB集群中在线添加新的数据节点,使其加入新的节点组,从而开始完全参与集群。该命令使用逗号分隔的节点id列表作为唯一参数——这些是刚刚添加和启动的节点的id,它们将加入新的节点组。列表中不能包含重复的id;从NDB 7.5.23和NDB 7.6.19开始,任何副本的存在都会导致命令返回错误。列表中的节点数量必须与已属于集群的每个节点组中的节点数量相同(每个NDB cluster节点组的节点数量必须相同)。换句话说,如果NDB集群由2个节点组组成,每个节点组有2个数据节点,那么新的节点组也必须有2个数据节点。
由此命令创建的新节点组的节点组ID将自动确定,并且始终是集群中第二大未使用的节点组ID;手动设置是不可能的。
有关更多信息,请参见第21.5.7节“在线新增NDB集群数据节点”.
删除NDB Cluster节点组
nodegroup_id
.该命令用于删除NDB集群中的节点组。
删除节点组
将要删除的节点组的节点组ID作为唯一参数。删除节点组
仅将受影响的节点组中的数据节点从该节点组中删除。它不会停止数据节点、将它们分配到不同的节点组或从集群配置中删除它们。不属于节点组的数据节点会显示在管理客户端的输出中显示
命令没有节点组
代替节点组ID,像这样(用粗体表示):Id =3 @10.100.2.67 (5.7.33- db-7.5.22, no nodegroup)
删除节点组
仅当要删除的节点组中的所有数据节点完全没有任何表数据和表定义时才有效。因为目前没有办法使用ndb_mgm或者是mysql客户端删除指定数据节点或节点组中的所有数据,这意味着只有在以下两种情况下该命令才会成功:发行后
创建节点组
在ndb_mgm客户端,但在发出任何ALTER TABLE……重组分区
语句的mysql客户端。后放弃所有
NDBCLUSTER
表的使用删除表
.截断表
不能用于此目的,因为这只删除表数据;数据节点继续存储NDBCLUSTER
表的定义直到a删除表
语句将导致删除表元数据。
有关
删除节点组
,请参阅第21.5.7节“在线新增NDB集群数据节点”.更改所显示的提示ndb_mgm字符串字面量
提示
.提示
不应该用引号括起来(除非您希望提示符包含引号)。不像这种情况mysql客户端,无法识别特殊字符序列和转义。如果不带参数调用,该命令将提示符重置为默认值(ndb_mgm >
).以下是一些例子:
ndb_mgm> PROMPT mgm#1: SHOW Cluster Configuration…mgm#1: PROMPT mymgm > mymgm > PROMPT 'mymgm:' 'mymgm:' PROMPT mymgm: mymgm: PROMPT ndb_mgm> EXIT jon@valhaj:~/bin>
中的前导空格和空格
提示
字符串没有修剪。删除尾随空格。的
提示
命令在NDB 7.5.0中新增。控件在节点日志中切换调试日志记录,就好像受影响的数据节点已经用
——详细
选择。NODELOG上调试
开始调试日志记录;NODELOG调试了
关闭调试日志。此命令在NDB 7.6.4中添加。
额外的命令。中的许多其他命令可用ndb_mgm客户端的描述在别处,如下表所示:
开始备份
用于在ndb_mgm客户端;的中止备份
命令用于取消正在进行的备份。有关更多信息,请参见第21.5.8节“新db集群在线备份”.的
CLUSTERLOG
命令用于执行各种日志功能。看到第21.5.3节“NDB集群中生成的事件报告”,以获取更多信息和示例。NDB 7.6.4添加了NODELOG DEBUG来激活或关闭节点日志中的调试打印输出,如本节前面所述。对于测试和诊断工作,客户端支持
转储
命令,该命令可用于执行集群内部命令。它永远不应该在生产环境中使用,除非MySQL支持指示这样做。有关更多信息,请参见MySQL NDB集群内部手册.