【GBase 8c V5_3.0.0 分布式数据库常用维护命令】
一、查看数据库状态/检查(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相关文章:
【GBase 8c V5_3.0.0 分布式数据库常用维护命令】
一、查看数据库状态/检查(gbase用户) 1.gha_ctl monitor 使用gha_ctl monitor查看节点运行情况(跟dcs的地址和端口) gha_ctl monitor -c gbase -l http://172.20.10.8:2379 -Hall |coordinator | datanode | gtm | server|dcs:必选字段。指定查看哪类集…...
破解AI生成检测:如何用ChatGPT降低论文的AIGC率
学境思源,一键生成论文初稿: AcademicIdeas - 学境思源AI论文写作 降低论文的“AIGC率”是个挑战,但有一些策略可以尝试。使用ChatGPT逐步调整和改进内容,使其更加自然和原创,降低AI检测工具识别出高“AIGC率”的概率…...
Python用MarkovRNN马尔可夫递归神经网络建模序列数据t-SNE可视化研究
原文链接:https://tecdat.cn/?p37634 本文聚焦于利用马尔可夫递归神经网络(MarkovRNN)结合树库展开建模工作。MarkovRNN 通过整合马尔可夫特性与离散随机变量来深入探索递归神经网络中的随机转换机制,旨在高效处理具有复杂潜在信…...
setup函数子传父普通写法
父组件 <template><div><p>接收的数据: {{ receivedData }}</p><Demo4Chiren2 custom-event"handleGetWeb" /></div> </template><script> import { ref } from vue; import Demo4Chiren2 from ./demo4Chiren2.vue…...
seafaring靶场漏洞测试攻略
步骤一:打开网页 一:sql注入漏洞 步骤一:测试回显点 -1 union select 1,2,3# 步骤二:查看数据库 -1 union select 1,2,database()# 步骤三:查看表名 -1 union select 1,2,group_concat(table_name) from informati…...
简单示例,搞懂PowerBI的ALL(),ALLEXCEPT()和ALLSELECTED()的区别
假设我们有如下数据,我们来统计下各班级的人数 我们在报表页里加上 班级’二班‘ 的筛选条件,此时PowerBI已经自动为我们显示了各班级人数:一班有3人,二班有1人。 根据我们的筛选条件,我们的统计人数应该是按照筛选器&…...
Collection
java.util.Collections:是集合工具类 作用:Collections不是集合,而是集合的工具类 常用API addAll package Collections;import java.util.ArrayList; import java.util.Collections;public class CollectionsDemo {public static void main(String[]…...
19章 泛型
1.修改程序清单19-1中的GenericStack类,使用数组而不是ArrayList来实现它。你应该在给栈添加新元素之前检查数组的大小如果数组满了,就创建一个新数组。该数组是当前数组大小的两倍,然后将当前数组的元素复制到新数组中。 public class Gene…...
基于python+django+mysql+Nanodet检测模型的水稻虫害检测系统
博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…...
计算机网络27、28——Linux命令1、2
1、虚拟机网络前方路径内容 用户名机器名:/$ $表示普通用户,#表示root用户 2、Linux不分盘,都是绝对路径 /表示根目录,表示计算机文件夹下 ~是当前用户的家,表示home文件夹下自己的文件夹 3、bin文件夹下的是可执…...
【Python深度学习】逆强化学习(IRL):通俗揭开学习背后的奥秘
逆强化学习:揭开学习背后的奥秘 1. 引言 当我们谈论人工智能(AI)时,很多人第一时间会想到强化学习。强化学习是一种让智能体通过与环境的互动,逐渐学习到如何做出最优决策的学习方法。然而,有一种更加神奇的学习方式叫做 逆强化学习(Inverse Reinforcement Learning,…...
Linux:五种IO模型
1:五种IO模型 1:阻塞IO 阻塞IO: 在内核将数据准备好之前,系统调用会一直等待.所有的套接字,默认 都是阻塞方式。 2:非阻塞 IO 非阻塞 IO: 如果内核还未将数据准备好, 系统调用仍然会直接返回, 并且返回EWOULDBLOCK 错误码。 非阻塞 IO 往往需…...
ansible企业实战
ansible最佳实践 优化ansible速度 开启SSH长连接 修改 /etc/ansible/ansible.cfg里面的参数 ssh_args -C -o ControlMasterauto -o ControlPersist5d ControlPersist5d这个参数是设置整个长连接保持时间设置为5天,如果开启,通过SSH连接过的设备都会…...
面向对象程序设计之模板进阶(C++)
在之前我出过一篇博客介绍了模版的初阶:面向对象程序设计(C)模版初阶,接下来我们将进行模版的进阶学习,介绍关于更多模版的知识 1.非类型模版参数 模板参数分类类型形参与非类型形参 类型形参即:出现在模板参数列表中,跟在class或…...
电巢科技携Ecosmos元宇宙产品亮相第25届中国光博会
第25届中国国际光电博览会(“CIOE中国光博会”)今日在深圳国际会展中心盛大开幕。本届博览会以“光电引领未来,驱动应用创新”为主题,吸引了全球超过3700家优质光电企业参展,展示了光电产业的最新成果和前沿技术。 电…...
Redis 入门 - 收官
《Redis 入门》系列文章总算完成了,希望这个系列文章可以想入门或刚入门的同学提供帮助,希望能让你形成学习Redis系统性概念。 当时为什么要写这个系列文章,是因为我自己就是迷迷糊糊一路踩坑走过来的,我踩完的坑就踩完了&#x…...
Windows技术栈企业基础底座(1)-为基于Windows的Nginx安装证书
企业的基础环境是一个组织的信息化数字化底座。传统企业基础环境多种系统,应用交杂,多种技术栈使得深入运维成本极大,且人员知识技能较难复用,造成资源浪费。本系列旨在尝试推动这一理念, 建立Windows, 或linux聚焦的技术栈的企业…...
ThreeJS入门(002):学习思维路径
查看本专栏目录 - 本文是第 002篇入门文章 文章目录 如何使用这个思维导图 Three.js 学习思维导图可以帮助你系统地了解 Three.js 的各个组成部分及其关系。下面是一个简化的 Three.js 学习路径思维导图概述,它包含了学习 Three.js 的主要概念和组件。你可以根据这个…...
基于ssm+vue+uniapp的新生报到系统小程序
开发语言:Java框架:ssmuniappJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:M…...
掌握 JavaScript ES6+:现代编程技巧与模块化实践
掌握 JavaScript ES6:现代编程技巧与模块化实践 一 . 变量声明 let二 . 声明常量 const三 . 模板字符串四 . 函数的参数默认值五 . 箭头函数六 . 对象初始化七 . 解构7.1 接收 JSON 对象7.2 接收数组 八 . 延展操作符九 . 导入和导出9.1 方式一9.2 方式二 这篇文章我…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
Redis数据倾斜问题解决
Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中,部分节点存储的数据量或访问量远高于其他节点,导致这些节点负载过高,影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...
[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG
TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码:HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...
Django RBAC项目后端实战 - 03 DRF权限控制实现
项目背景 在上一篇文章中,我们完成了JWT认证系统的集成。本篇文章将实现基于Redis的RBAC权限控制系统,为系统提供细粒度的权限控制。 开发目标 实现基于Redis的权限缓存机制开发DRF权限控制类实现权限管理API配置权限白名单 前置配置 在开始开发权限…...
Java多线程实现之Runnable接口深度解析
Java多线程实现之Runnable接口深度解析 一、Runnable接口概述1.1 接口定义1.2 与Thread类的关系1.3 使用Runnable接口的优势 二、Runnable接口的基本实现方式2.1 传统方式实现Runnable接口2.2 使用匿名内部类实现Runnable接口2.3 使用Lambda表达式实现Runnable接口 三、Runnabl…...
GeoServer发布PostgreSQL图层后WFS查询无主键字段
在使用 GeoServer(版本 2.22.2) 发布 PostgreSQL(PostGIS)中的表为地图服务时,常常会遇到一个小问题: WFS 查询中,主键字段(如 id)莫名其妙地消失了! 即使你在…...
新版NANO下载烧录过程
一、序言 搭建 Jetson 系列产品烧录系统的环境需要在电脑主机上安装 Ubuntu 系统。此处使用 18.04 LTS。 二、环境搭建 1、安装库 $ sudo apt-get install qemu-user-static$ sudo apt-get install python 搭建环境的过程需要这个应用库来将某些 NVIDIA 软件组件安装到 Je…...
