【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 方式二 这篇文章我…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
Web中间件--tomcat学习
Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机,它可以执行Java字节码。Java虚拟机是Java平台的一部分,Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...