一、查看数据库状态/检查(gbase用户)
1.gha_ctl monitor
使用gha_ctl monitor查看节点运行情况(跟dcs的地址和端口)
gha_ctl monitor -c gbase -l http://172.20.10.8:2379 -H
- all |coordinator | datanode | gtm | server|dcs:必选字段。指定查看哪类集群节点或全部。
- -H:可选字段。指定返回信息是否以表格形式显示。缺省默认为文件命令行形式。
2.om工具(gbase用户)
gs_om -t status --detail
3.check检查数据库状态(gbase用户)
gs_check -U gbase -i CheckClusterState
- -U:指定以哪个管理员用户身份进行检查操作。
- -i:该参数用于指定检查项。注意区分大小写。格式为
-i CheckClusterState/CheckCPU/CheckClusterState/CheckCPU
4.健康检查(gbase用户)
gs_check -e inspect
- -e:该参数用于指定场景名。注意区分大小写。取值范围为所有支持的巡检场景名称。默认场景包括:inspect(例行巡检)、upgrade (升级前巡检)、binary_upgrade(就地升级前巡检)、health(健康检查巡检)、slow_node (节点)、longtime(耗时长巡检)、install(安装)。用户可根据实际需求,指定巡 检场景。
二、启动数据库(-l 跟dcs地址)
1,启动整个集群
gha_ctl start all -l http://172.20.10.8:2379
成功返回
{
"ret":0,
"msg":"Success"
}
- -c参数:指定数据库名称,为可选字段。缺省默认值gbase
- all可替换的值为:all |coordinator | datanode | gtm | server。指定启动全部节点或某类型节点。
2.启动单个dn
命令语法
gha_ctl start datanode group_name node_name -l dcslist [-c cluster]
举例为:
gha_ctl start datanode dn1 dn1_1 -c gbase8c -l http://172.20.10.8:2379
三、关闭数据库(-l 跟dcs地址)
1.关闭整个集群
gha_ctl stop all -l http://10.0.7.16:2379
成功返回
{
"ret":0,
"msg":"Success"
}
- -c参数:指定数据库名称,为可选字段。缺省默认值gbase
- all可替换的值为:all |coordinator | datanode | gtm | server。指定关闭全部节点或某类型节点。
2.关闭单个dn
命令语法
gha_ctl stop datanode group_name node_name -l dcslist [-c cluster]
举例为:
gha_ctl stop datanode dn1 dn1_1 -c gbase8c -l http://172.20.10.8:2379
四、数据库安装
通过安装目录script工具库下的gha_ctl工具进行安装部署,执行命令:
/home/gbase/gbase_package/script/gha_ctl install -c gbase -p /home/gbase/
- -c参数:指定数据库名称,为可选字段。缺省默认值gbase。
- -p参数:指定配置文件保存路径,为可选字段。缺省默认值/home/gbase。
五、数据库卸载
1.数据库卸载
gha_ctl uninstall -c gbase -l http://172.20.10.8:2379
- -c参数:指定数据库名称,为可选字段。缺省默认值gbase。
- -f参数:表示清理安装目录,为可选字段。缺省保留目录文件夹。
- -l跟的为DCS地址
成功返回
{
"ret":0,
"msg":"Success"
}
在集群卸载后环境变量自动清除,因此再次执行 gha_ctl 命令需要进入 script 目录。
2.卸载DCS
卸载DCS工具的具体操作命令为:
[gbase@gbase8c ~]$ cd /home/gbase/gbase_package/script
[gbase@gbase8c script]$ ./gha_ctl destroy dcs -l http://172.20.10.8:2379
六、连接数据库
gsql -d postgres -p 5432
一般通过 CN 节点连接
- -d参数指定要连接到的数据库名称。首次连接可以指定生成的默认数据库postgres。
- -p参数指定通过节点哪个端口号连接。可查看安装使用的yml文件。
- -U参数指定以哪个数据库用户身份连接,权限可能不同。缺省默认为gbase。
- -h参数指定数据库节点所在的服务器IP。缺省默认为当前服务器IP。
七、更改配置
1.更改hba
配置允许任意 IP 的客户端,以任意用户访问集群,执行如下命令:
[gbase@gbase8c ~]$ gs_guc reload -Z coordinator -N all -I all -h "host all all 0.0.0.0/0 sha256"
2.查看参数
查看数据库目前的listen_addresses配置。
gs_guc check -Z coordinator -N all -I all -c "listen_addresses"
3.更改参数
gs_guc reload -Z coordinator -N all -I all -c "listen_addresses='*'"
八、主备切换
语法格式
gha_ctl switchover datanode|gtm group_name leader_node_name [standby_node_name] -l dcslist [-c cluster]
例如:备节点执行
gha_ctl switchover datanode dn1 dn1_1 -c gbase8c -l http://172.20.10.8:2379
九、扩缩容
1.扩容
(1)配置互信
(2)在 DCS 节点上,在集群中添加新增节点的 IP。
gha_ctl deploy host_ip -l http://dcs_ip:2379
(3) 执行扩容命令。
将原集群的 M 个 DN 主备组扩容为 N 个主备组(N>M),将新增加的每一个主备组信 息用一组引号单独括起来,每个主备的信息是 DN 组名+用括号括起来的所有主备节点的信 息,一个节点用一个括号。语法如下:
gha_ctl expand datanode 'new_group1 (name1_1 host1_1 port1_1 dir1_1 agent_port1_1 agent_host1_1) (name1_2 host1_2 port1_2 dir1_2 agent_port1_2 agent_host1_2)' 'new_group2 (name2_1 host2_1 port2_1 dir2_1 agent_port2_1 agent_host2_1) (name2_2 host2_2 port2_2 dir2_2 agent_port2_2 agent_host2_2)' ['...'] -l dcslist [-c cluster] -u uuid -j parallel_num
参数说明:
- new_group:指定新增高可用组的名称。可根据需要,同时扩充多个高可用组。
- name:指定高可用组内的 DN 节点名称,一般格式应为 dn[数字]_[数字]。
- host:指定扩容高可用组内对应 DN 节点的 IP。
- port:指定对应 DN 节点的端口号。同高可用组内端口需一致。当资源限制需重复使用 同一节点,在不同高可用组内分别承担主备角色时,需将两个高可用组端口设置不同, 避免端口复用而报错。
- dir:指定对应 DN 节点的存储路径。
- agent_port:指定对应 DN 节点的代理端口号。
- agent_host:为可选参数。缺省值为 host 参数值。指定 DN 节点控制面 IP。
- uuid:通过唯一标识指定数据库。uuid 可以用如下命令生成:cat /proc/sys/kernel/random/uuid
- parallel_num:指定扩容时并行执行参数,多表同时执行重分布。默认值为 1。
举例:
扩容 DN2 高可用组,组内主节点为 10.0.7.6,备节点 10.0.7.7。
[gbase@gbase8c ~]$ cat /proc/sys/kernel/random/uuid 40ac7d83-6be3-486c-83c4-8942a16d3590
[gbase@gbase8c ~]$ gha_ctl expand datanode 'dn2 (dn2_1 10.0.7.6 15466 /home/gbase/data/dn2_1 8011 10.0.7.6) (dn2_2 10.0.7.7 15466 /home/gbase/data/dn2_2 8012 10.0.7.7) ' -l http://10.0.7.7:2379 -u 40ac7d83-6be3-486c-83c4-8942a16d3590
2.缩容
将原集群的 M 个 DN 主备组缩容为 N 个主备组(N<M),del_group1, del_group2 为缩 容时需要删除的 DN 主备组名称。
语法为:
gha_ctl shrink datanode del_group1 [del_group2 ...] -l dcslist [-c cluster] -u uuid -j parallel_num
举例:
[gbase@gbase8c ~]$ gha_ctl shrink datanode dn3 dn4 -l http://10.0.7.7:2379 -u b99ee57c-8b90-4196-896c-19d58bdaae6a
3.查询扩缩容结果
语法格式
gha_ctl get expand latest/history -l dcslist [-c cluster]
举例:
[gbase@gbase8c ~]$ gha_ctl get expand latest -l http://10.0.7.16:2379
[gbase@gbase8c ~]$ gha_ctl get expand history -l http://10.0.7.16:2379
十、buil备机命令
gha_ctl build dn_name -b auto -l dcslist