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