当前位置: 首页 > news >正文

【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:可选字段。指定返回信息是否以表格形式显示。缺省默认为文件命令行形式。

image.png

2.om工具(gbase用户)

gs_om -t status --detail

image.png

3.check检查数据库状态(gbase用户)

gs_check -U gbase -i CheckClusterState
  • -U:指定以哪个管理员用户身份进行检查操作。
  • -i:该参数用于指定检查项。注意区分大小写。格式为
    -i CheckClusterState/CheckCPU/CheckClusterState/CheckCPU

image.png

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。

image.png

七、更改配置

1.更改hba

配置允许任意 IP 的客户端,以任意用户访问集群,执行如下命令:

[gbase@gbase8c ~]$ gs_guc reload -Z coordinator -N all -I all -h "host all all 0.0.0.0/0 sha256"

image.png

2.查看参数

查看数据库目前的listen_addresses配置。

gs_guc check -Z  coordinator -N all -I all -c "listen_addresses"

image.png


3.更改参数

 gs_guc reload -Z coordinator -N all -I all -c "listen_addresses='*'"

image.png

八、主备切换

语法格式

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 分布式数据库常用维护命令】

一、查看数据库状态/检查&#xff08;gbase用户&#xff09; 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率

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 降低论文的“AIGC率”是个挑战&#xff0c;但有一些策略可以尝试。使用ChatGPT逐步调整和改进内容&#xff0c;使其更加自然和原创&#xff0c;降低AI检测工具识别出高“AIGC率”的概率…...

Python用MarkovRNN马尔可夫递归神经网络建模序列数据t-SNE可视化研究

原文链接&#xff1a;https://tecdat.cn/?p37634 本文聚焦于利用马尔可夫递归神经网络&#xff08;MarkovRNN&#xff09;结合树库展开建模工作。MarkovRNN 通过整合马尔可夫特性与离散随机变量来深入探索递归神经网络中的随机转换机制&#xff0c;旨在高效处理具有复杂潜在信…...

setup函数子传父普通写法

父组件 <template><div><p>接收的数据: {{ receivedData }}</p><Demo4Chiren2 custom-event"handleGetWeb" /></div> </template><script> import { ref } from vue; import Demo4Chiren2 from ./demo4Chiren2.vue…...

seafaring靶场漏洞测试攻略

步骤一&#xff1a;打开网页 一&#xff1a;sql注入漏洞 步骤一&#xff1a;测试回显点 -1 union select 1,2,3# 步骤二&#xff1a;查看数据库 -1 union select 1,2,database()# 步骤三&#xff1a;查看表名 -1 union select 1,2,group_concat(table_name) from informati…...

简单示例,搞懂PowerBI的ALL(),ALLEXCEPT()和ALLSELECTED()的区别

假设我们有如下数据&#xff0c;我们来统计下各班级的人数 我们在报表页里加上 班级’二班‘ 的筛选条件&#xff0c;此时PowerBI已经自动为我们显示了各班级人数&#xff1a;一班有3人&#xff0c;二班有1人。 根据我们的筛选条件&#xff0c;我们的统计人数应该是按照筛选器&…...

Collection

java.util.Collections:是集合工具类 作用&#xff1a;Collections不是集合&#xff0c;而是集合的工具类 常用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类&#xff0c;使用数组而不是ArrayList来实现它。你应该在给栈添加新元素之前检查数组的大小如果数组满了&#xff0c;就创建一个新数组。该数组是当前数组大小的两倍&#xff0c;然后将当前数组的元素复制到新数组中。 public class Gene…...

基于python+django+mysql+Nanodet检测模型的水稻虫害检测系统

博主介绍&#xff1a; 大家好&#xff0c;本人精通Java、Python、C#、C、C编程语言&#xff0c;同时也熟练掌握微信小程序、Php和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验&#xff0c;能够为学生提供各类…...

计算机网络27、28——Linux命令1、2

1、虚拟机网络前方路径内容 用户名机器名&#xff1a;/$ $表示普通用户&#xff0c;#表示root用户 2、Linux不分盘&#xff0c;都是绝对路径 /表示根目录&#xff0c;表示计算机文件夹下 ~是当前用户的家&#xff0c;表示home文件夹下自己的文件夹 3、bin文件夹下的是可执…...

【Python深度学习】逆强化学习(IRL):通俗揭开学习背后的奥秘

逆强化学习:揭开学习背后的奥秘 1. 引言 当我们谈论人工智能(AI)时,很多人第一时间会想到强化学习。强化学习是一种让智能体通过与环境的互动,逐渐学习到如何做出最优决策的学习方法。然而,有一种更加神奇的学习方式叫做 逆强化学习(Inverse Reinforcement Learning,…...

Linux:五种IO模型

1&#xff1a;五种IO模型 1&#xff1a;阻塞IO 阻塞IO: 在内核将数据准备好之前,系统调用会一直等待.所有的套接字,默认 都是阻塞方式。 2&#xff1a;非阻塞 IO 非阻塞 IO: 如果内核还未将数据准备好, 系统调用仍然会直接返回, 并且返回EWOULDBLOCK 错误码。 非阻塞 IO 往往需…...

ansible企业实战

ansible最佳实践 优化ansible速度 开启SSH长连接 修改 /etc/ansible/ansible.cfg里面的参数 ssh_args -C -o ControlMasterauto -o ControlPersist5d ControlPersist5d这个参数是设置整个长连接保持时间设置为5天&#xff0c;如果开启&#xff0c;通过SSH连接过的设备都会…...

面向对象程序设计之模板进阶(C++)

在之前我出过一篇博客介绍了模版的初阶:面向对象程序设计(C)模版初阶&#xff0c;接下来我们将进行模版的进阶学习&#xff0c;介绍关于更多模版的知识 1.非类型模版参数 模板参数分类类型形参与非类型形参 类型形参即&#xff1a;出现在模板参数列表中&#xff0c;跟在class或…...

电巢科技携Ecosmos元宇宙产品亮相第25届中国光博会

第25届中国国际光电博览会&#xff08;“CIOE中国光博会”&#xff09;今日在深圳国际会展中心盛大开幕。本届博览会以“光电引领未来&#xff0c;驱动应用创新”为主题&#xff0c;吸引了全球超过3700家优质光电企业参展&#xff0c;展示了光电产业的最新成果和前沿技术。 电…...

Redis 入门 - 收官

《Redis 入门》系列文章总算完成了&#xff0c;希望这个系列文章可以想入门或刚入门的同学提供帮助&#xff0c;希望能让你形成学习Redis系统性概念。 当时为什么要写这个系列文章&#xff0c;是因为我自己就是迷迷糊糊一路踩坑走过来的&#xff0c;我踩完的坑就踩完了&#x…...

Windows技术栈企业基础底座(1)-为基于Windows的Nginx安装证书

企业的基础环境是一个组织的信息化数字化底座。传统企业基础环境多种系统&#xff0c;应用交杂&#xff0c;多种技术栈使得深入运维成本极大&#xff0c;且人员知识技能较难复用&#xff0c;造成资源浪费。本系列旨在尝试推动这一理念, 建立Windows, 或linux聚焦的技术栈的企业…...

ThreeJS入门(002):学习思维路径

查看本专栏目录 - 本文是第 002篇入门文章 文章目录 如何使用这个思维导图 Three.js 学习思维导图可以帮助你系统地了解 Three.js 的各个组成部分及其关系。下面是一个简化的 Three.js 学习路径思维导图概述&#xff0c;它包含了学习 Three.js 的主要概念和组件。你可以根据这个…...

基于ssm+vue+uniapp的新生报到系统小程序

开发语言&#xff1a;Java框架&#xff1a;ssmuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;M…...

掌握 JavaScript ES6+:现代编程技巧与模块化实践

掌握 JavaScript ES6&#xff1a;现代编程技巧与模块化实践 一 . 变量声明 let二 . 声明常量 const三 . 模板字符串四 . 函数的参数默认值五 . 箭头函数六 . 对象初始化七 . 解构7.1 接收 JSON 对象7.2 接收数组 八 . 延展操作符九 . 导入和导出9.1 方式一9.2 方式二 这篇文章我…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案

这个问题我看其他博主也写了&#xff0c;要么要会员、要么写的乱七八糟。这里我整理一下&#xff0c;把问题说清楚并且给出代码&#xff0c;拿去用就行&#xff0c;照着葫芦画瓢。 问题 在继承QWebEngineView后&#xff0c;重写mousePressEvent或event函数无法捕获鼠标按下事…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

MySQL的pymysql操作

本章是MySQL的最后一章&#xff0c;MySQL到此完结&#xff0c;下一站Hadoop&#xff01;&#xff01;&#xff01; 这章很简单&#xff0c;完整代码在最后&#xff0c;详细讲解之前python课程里面也有&#xff0c;感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...

Pydantic + Function Calling的结合

1、Pydantic Pydantic 是一个 Python 库&#xff0c;用于数据验证和设置管理&#xff0c;通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发&#xff08;如 FastAPI&#xff09;、配置管理和数据解析&#xff0c;核心功能包括&#xff1a; 数据验证&#xff1a;通过…...

6.9-QT模拟计算器

源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...