参考地址

​https://www.postgres-xl.org/documentation/tutorial-createcluster.html​

//创建表时该表的数据将在各个数据节点均存储一份,即一百条数据将在各个节点均为100条数据。

CREATE TABLE repltab (col1 int, col2 int) DISTRIBUTE BY REPLICATION;

//创建表时指定该表按照字段col1进行哈希算法负载至各个存储节点上

CREATE TABLE disttab(col1 int, col2 int, col3 text) DISTRIBUTE BY HASH(col1);

//重新分配该表的数据在各个存储节点数据占比

ALTER TABLE disttab ADD NODE (dn3);

//去掉该表在dn3的数据分配,

ALTER TABLE disttab DELETE NODE (dn3);

//将REPLICATION的表进行分配为基于hash的各数据分配各节点的方式。这里仅会初始到集群默认安装时的那几个存储节点中,不会使用后来新增的数据节点。

ALTER TABLE repltab DISTRIBUTE BY HASH(col1);

//将hash分配模式更改为复制模式

ALTER TABLE repltab DISTRIBUTE BY REPLICATION;

//查询该表目前各数据分布在各存储的数量

SELECT xc_node_id, count(*) FROM repltab GROUP BY xc_node_id;



//查询当前控制节点和存储节点信息和其oid

SELECT oid, * FROM pgxc_node;

在集群管理工具下:

PGXC$

//增加一个控制器(访问集群节点)

add coordinator master coord3 localhost 30003 30013 $dataDirRoot/coord_master.3 none none

//增加一个存储节点

add datanode master dn3 localhost 40003 40013 $dataDirRoot/dn_master.3 none none none

//查询当前启动的所有集群节点

//删除指定节点

stop -m immediate datanode master dn1

//直接关闭存储节点,不影响备份从节点

//使用slave从节点替换主节点故障

failover datanode dn1