pgxc_ctl命令使用


说明

Postgres-XL集群各个组件的手工配置很麻烦且容易出错。Postgres-XL集群工具pgxc_ctl可简化 Postgres-XL 组件的配置,初始化, 开始, 停用, 监控和故障切换 。

构建和安装pgxc_ctl

pgxc_ctl源码附带Postgres-XL源码。在构建 pgxc_ctl之前,你应该先构建Postgres-XL二进制文件,如:

$ cd your Postgres-XL build directory
$ ./configure your configuration option
$ make

请注意,可以不安装Postgres-XL而直接安装 pgxc_ctl。也请注意,Postgres-XL 顶层make和make install不会附带安装pgxc_ctl,你应该分别构建安装它。

因此,你可以用以下方法安装:

$ cd contrib/pgxc_ctl
$ make
$ make install

pgxc_ctl commands

创建

add gtm master name host port dir
add gtm slave name host port dir
add gtm_proxy name host port dir
add coordinator master name host port pooler dir extraServerConf extraPgHbaConf
add coordinator slave name host port pooler dir archDir
add datanode master name host port pooler dir xlogdir extraServerConf extraPgHbaConf
add datanode slave name host port pooler dir xlogdir archDir

初始化

init [force] all
init [force] nodename ...
init [force] gtm [ master | slave | all ]
init [force] gtm_proxy [ all | nodename ... ]
init [force] coordinator nodename ...
init [force] coordinator [ master | slave ] [ all | nodename ... ]
init [force] datanode nodename ...
init [force] datanode [ master | slave ] [ all | nodename ... ]

初始化过程中,每个组件的工作目录如果不存在,将会被创建。如果指定[force],将会工作目录下的所有内容将会被移除。不使用[force],则不会清除已经存在目录下的内容。

kill

kill all
kill nodename ...
kill gtm [ master | slave | all ]
kill gtm_proxy [ all | nodename ... ]
kill coordinator nodename ...
kill coordinator [ master | slave ] [ all | nodename ... ]
kill datanode nodename ...
kill datanode [ master | slave ] [ all | nodename ... ]

如果被指定kill的节点有master和slave,则两个节点将会被关闭。

日志

log [ variable | var ] *varname*

log [ message | msg ] *message_body*

Prints the specified contents to the log file. Variable or var option writes specified variable name and its value. Message or msg option writes specified message.

monitor all
monitor nodename ...
monitor gtm [ master | slave | all ]
monitor gtm_proxy [ all | nodename ... ]
monitor coordinator nodename ...
monitor coordinator [ master | slave ] [ all | nodename ... ]
monitor datanode nodename ...
monitor datanode [ master | slave ] [ all | nodename ... ]

监控指定节点是否行动

reconnect gtm_proxy [ all | nodename ... ]

当failover到slave GTM之后,需要执行重新连接指定的节点的操作。

删除节点

remove gtm master [ clean ]
remove gtm slave [ clean ]
remove gtm_proxy nodename [ clean ]
remove coordinator [ master| slave ] nodename [ clean ]
remove datanode [ master| slave ] nodename [ clean ]

开始节点

start all
start nodename ...
start gtm [ master | slave | all ]
start gtm_proxy [ all | nodename ... ]
start coordinator nodename ...
start coordinator [ master | slave ] [ all | nodename ... ]
start datanode nodename ...
start datanode [ master | slave ] [ all | nodename ... ]

暂停节点

stop [ -m smart | fast | immediate ] all
stop gtm [ master | slave | all ]
stop gtm_proxy [ all | nodename ... ]
stop [ -m smart | fast | immediate ] coordinator nodename ... 
stop [ -m smart | fast | immediate ] coordinator [ master | slave ] [ all | nodename ... ] 
stop [ -m smart | fast | immediate ] datanode nodename ... 
stop [ -m smart | fast | immediate ] datanode [ master | slave ] [ all | nodename ... ]

取消GTM中的注册节点

当节点崩溃启动新节点时,可能需要注销在GTM中注册的节点。

unregister unregister_option ...
# unregister_option有以下参数:
-n name: #指定需要注册的节点
-Z { gtm | gtm_proxy | gtm_proxy_postmaster | coordinator | datanode }	# 指定节点类别

整理自:https://www.postgres-xl.org/documentation/pgxc-ctl.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM