DEMOTE_SUBCLUSTER_TO_SECONDARY
仅限 Eon 模式
如果以下任一情况为真,Vertica 将不允许对主子群集降级:
-
子群集包含一个 关键节点。
-
子群集是数据库中唯一的主子群集。您必须至少有一个主子群集。
-
启动程序节点是指您尝试降级的子群集的成员。您必须从另一个子群集调用 DEMOTE_SUBCLUSTER_TO_SECONDARY。
重要
此函数调用可能需要很长时间才能完成,因为您要Set Snippet Variable Value in Topic的子群集中的所有节点都将采用全局编录锁定,编写检查点,然后提交。此全局编录锁可能会导致其他数据库任务失败并显示错误。
计划在其他数据库活动较少时调用此函数。
这是元函数。您必须在顶级 SELECT 语句中调用元函数。
行为类型
易变语法
DEMOTE_SUBCLUSTER_TO_SECONDARY('subcluster-name')
参数
- subcluster‑name
- 要降级为辅助子群集的主子群集的名称。
特权
超级用户
示例
以下示例将子群集 analytics_cluster
降级为辅助子群集:
=> SELECT DISTINCT subcluster_name, is_primary from subclusters;
subcluster_name | is_primary
-------------------+------------
analytics_cluster | t
load_subcluster | t
(2 rows)
=> SELECT DEMOTE_SUBCLUSTER_TO_SECONDARY('analytics_cluster');
DEMOTE_SUBCLUSTER_TO_SECONDARY
--------------------------------
DEMOTE SUBCLUSTER TO SECONDARY
(1 row)
=> SELECT DISTINCT subcluster_name, is_primary from subclusters;
subcluster_name | is_primary
-------------------+------------
analytics_cluster | f
load_subcluster | t
(2 rows)
尝试将包含启动程序节点的子群集降级会导致错误:
=> SELECT node_name FROM sessions WHERE user_name = 'dbadmin'
AND client_type = 'vsql';
node_name
----------------------
v_verticadb_node0004
(1 row)
=> SELECT node_name, is_primary FROM subclusters WHERE subcluster_name = 'analytics';
node_name | is_primary
----------------------+------------
v_verticadb_node0004 | t
v_verticadb_node0005 | t
v_verticadb_node0006 | t
(3 rows)
=> SELECT DEMOTE_SUBCLUSTER_TO_SECONDARY('analytics');
ERROR 9204: Cannot promote or demote subcluster including the initiator node
HINT: Run this command on another subcluster