华为云云数据库GaussDBALTER COORDINATOR_云淘科技

功能描述

修改pgxc_node系统表中指定节点的nodeis_active字段值,可以在集群任意一个正常的CN上执行,并且指定在哪些节点上修改系统表。

注意事项

ALTER COORDINATOR是修改系统表的语句,限制只有管理员用户和内部维护模式(例如CM集群管理)可以执行。这个语句是CN剔除特性专用,要配合其他操作,不要单独使用,不建议用户自己执行。

该语句执行完成后,需要调用select reload_active_coordinator()更新发生系统表修改的节点连接池信息。

语法格式

1
2
ALTER COORDINATOR nodename SET status
      WITH (nodename1[, nodename2, nodename3 ...]);

参数说明

nodename

节点名,对应在pgxc_node系统表的一行记录,指定后将修改记录中的nodeis_active字段值。

取值范围:字符串,只支持CN,并且要保证该节点名在pgxc_node系统表中有对应的记录。

status

pgxc_node系统表中nodeis_acitve字段的更新值。

取值范围:

– FALSE

– TRUE

nodename1[, nodename2, nodename3 …]

该SQL执行的节点范围,ALTER COORDINATOR执行时会自动下发到范围内的所有节点,需要包含当前执行节点。

取值范围:字符串,只支持CN,要保证该节点名在pgxc_node系统表中有对应的记录,并且节点状态正常,否则SQL执行失败。

示例

集群有3个CN,cn_5001、cn_5002、cn_5003,均处于正常工作状态。

cn_5001发生故障且满足剔除时间要求后,需要将cn_5001从集群中剔除,执行SQL在cn_5002和cn5003节点上刷新pgxc_node系统表中cn_5001对应记录的nodeis_active为false:

ALTER COORDINATOR cn_5001 SET False WITH (cn_5002,cn_5003);

cn_5001故障解除后,为了在集群中加回cn_5001,执行SQL在cn_5002和cn5003节点上刷新pgxc_node系统表中cn_5001对应记录的nodeis_active为ture:

ALTER COORDINATOR cn_5001 SET True WITH (cn_5002,cn_5003);

父主题: SQL语法

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家