GaussDB主备版 8 工具学习

news2024/12/23 19:32:54

在这里插入图片描述

1 客户端工具

1.1 gsql
1.1.1 类似plsql
1.1.2 默认只支持从服务器本机连接,如果需要连接到远端的数据库,必须在服务端进行配置
1.1.3 gsql --help
1.1.4 命令参考-https://doc.hcs.huawei.com/db/zh-cn/gaussdb/24.1.30/tg/gaussdb-38-0007.html

1.1.5 元命令- copy 之类的非sql命令
copy
在任何gsql客户端登录数据库成功后可以执行导入导出数据,这是一个运行SQL COPY命令的操作,但不是读取或写入指定文件的服务器,而是读取或写入文件,并在服务器和本地文件系统之间路由数据。这意味着文件的可访问性和权限是本地用户的权限,而不是服务器的权限,并且不需要数据库初始化用户权限。

1.2 gs_loader
1.2.1 gs_loader工具用于进行数据导入。gs_loader将控制文件支持的语法转换为\COPY语法,然后利用已有的\COPY功能,做主要数据导入工作,同时gs_loader将\COPY结果记录到日志中
1.2.2 使用gs_loader前请确保gs_loader版本与gsql版本、数据库版本保持一致。
1.3 gs_dump
1.4 gs_dumpall
1.5 gs_restore
1.5.1 gs_restore是GaussDB提供的针对gs_dump导出数据的导入工具。通过此工具可将gs_dump导出生成的文件进行导入。

2 服务端工具

2.1 Roach
2.1.1 GaussRoach.py工具是GaussDB提供的用于备份和恢复的实用工具。可对整个数据库中的数据、WAL归档日志和运行日志进行备份。
2.1.2 使用该工具可以备份恢复数据库;不仅可以备份到物理磁盘,也可以备份到OBS、NAS和REMOTE
2.2 gs_cgroup
2.2.1 gs_cgroup是GaussDB提供的负载管理工具。负责创建默认控制组、创建用户自定义控制组、删除用户自定义控制组、更新用户自定义组的资源配额和资源限额、显示控制组配置文件内容、显示控制组树形结构和删除用户的所有控制组
2.3 gs_check
2.3.1 gs_check用来检查数据库状态,统一当前系统中存在的各种检查工具,帮助用户在数据库运行过程中,全量的检查数据库运行环境,操作系统环境,网络环境及数据库执行环境,也有助于在数据库重大操作之前对各类环境进行全面检查,有效保证操作执行成功。
2.4 gs_checkos
2.4.1 gs_checkos用于检查操作系统、控制参数、磁盘配置等内容,并对系统控制参数、I/O配置、网络配置和THP服务等信息进行配置。

2.5 gs_collector
2.5.1 当GaussDB数据库发生故障时,使用此工具收集数据库的OS信息、数据库的日志信息以及数据库配置文件等信息,来定位问题。可以使用-C参数,指定收集不同的信息内容,
2.5.2 主要是从视图收集信息,主备版本收集的视图列表https://doc.hcs.huawei.com/db/zh-cn/gaussdb/24.1.30/tg/gaussdb-38-0150.html
2.6 gs_encrypt
2.6.1 GaussDB提供了gs_encrypt工具为输入的明文字符串进行加密操作。
2.7 gs_guc
2.7.1 GaussDB配置文件参数设置
2.8 gs_om
2.8.1 对数据库进行维护,包括启动数据库、停止数据库、查询数据库状态、切换主备实例、修改IP、生成静态配置文件、SSL证书替换、执行日常巡检并上报告警、显示帮助信息和显示版本号信息等功能。
2.9 gs_replace
2.9.1 当数据库中某些主机故障或者主机上的某些实例发生故障后,为了使GaussDB快速地恢复正常,用户可以使用gs_replace工具将发生故障的主机替换为正常主机,将发生故障的实例替换为正常实例。
2.10 gs_ssh
2.10.1 GaussDB提供了gs_ssh工具帮助用户在数据库各节点上执行相同的命令。

3 系统内部调用的工具

3.1 GaussDB进程间运行使用的工具,或者说模块间调用的工具。这些工具只用于满足内部调用场景,未对其他场景下的使用正确性做过验证。因此,不建议用户直接使用这些工具执行业务,以防对系统运行带来影响。
3.2 etcd
3.3 etcdctl
3.4 gaussdb
3.4.1 gaussdb是GaussDB数据库的主进程,也是一个可执行的命令,能够通过其启动一个数据库进程。
3.5 gs_backup
3.5.1 备份和恢复数据库主机
3.6 gs_ctl
3.6.1 gs_ctl是GaussDB提供的数据库服务控制工具,可以用来启停数据库服务和查询数据库状态。主要供数据库管理模块调用。
3.7 gs_finishredo_retrieve
3.7.1 gs_finishredo_retrieve
3.8 gs_expand
3.9 gs_hotpatch
3.9.1 gs_hotpatch是一个用于给节点内所有DN实例应用热补丁的工具。
3.10 gs_install
3.10.1 GaussDB提供了gs_install工具来帮助完成数据库实例的安装和部署
3.11 gs_initdb
3.11.1 gs_initdb初始化数据库时,会创建数据库目录、生成系统表、创建默认数据库和模板数据库。
3.12 gs_persist
3.12.1 gs_persist工具用来在共享存储设备上实现注册、预留和抢占写权限等功能。该工具是系统内部工具,由DN实例自动调用,不建议用户使用。
3.13 gs_postuninstall
3.13.1 卸载后的环境清理
3.14 gs_preinstall
3.14.1 GaussDB提供了gs_preinstall工具来帮助完成数据库实例的环境配置,以保证数据库实例安装的正常进行。
3.15 gs_rescue
3.15.1 gs_rescue是用于在极端场景下抢救客户数据,将磁盘数据文件输出为COPY命令可识别的数据格式,可将数据导入新数据库实例,供客户选择是否使用。
3.16 gs_rescue_tui
3.16.1 gs_rescue_tui工具集成了gs_rescue工具的解析单表的功能,给用户提供TUI界面(Text-based User Interface,文本用户界面),在与用户的交互中,自动拼接解析系统表和用户表的gs_rescue命令,最终实现解析和恢复整个数据库的功能。
3.17 gs_shrink
3.18 gs_sshexkey
3.19 gs_switch_ddb
3.19.1 gs_switch_ddb工具用于将不带ETCD(DCC)数据库切换到ETCD数据库,或者将带ETCD数据库切换到不带ETCD(DCC)数据库。
3.20 gs_uninstall
3.21 gs_upgradectl
3.22 gns_ctl
3.22.1 数据库切换时候通知客户端配合
3.22.2 GaussDB数据库进行计划内维护时(switchover、restart DN、重启节点、重启数据库实例操作),OM相关接口将调用gns_ctl命令完成该次操作(而不是cm_ctl);gns_server将通知JDBC客户端数据库实例即将进行变更,JDBC客户端将继续向服务端发送正在运行的事务、而暂存新事务,不再向数据库发送,待正在运行的事务完成后挂起和DN的连接
3.23 gstrace
3.23.1 gstrace是GaussDB提供的用来侦听内核代码执行路径,记录内核数据结构,分析代码性能的工具。Trace的有限点位和数据在版本中被固化,无法动态添加和删除。
3.24 kerberos相关
3.24.1 kadmin.local
为数据库实例认证服务Kerberos提供命令行接口,直接接入kdc服务的数据库,进行增加、删除、修改Kerberos用户等操作。
3.24.2 kdb5_util
为数据库实例认证服务Kerberos提供数据库管理操作的工具,可以新建、销毁、导入和导出数据库。
3.24.3 kdestroy
3.24.4 kinit
为数据库实例认证服务Kerberos提供特定用户获取和缓存TGT能力。
3.24.5 klist
3.24.6 krb5kdc
3.25 om_monitor
3.25.1 om_monitor的主要功能是注册在各个物理节点上的定时任务,负责数据库管理组件cm_agent的启动。
3.26 omRollback.py
3.26.1 omRollback.py是在底层服务使用agent模式(区别于ssh模式的安装数据库的方式)下部署数据库时,升级过程中回滚代码的工具。
3.27 gs_controldata
3.27.1 gs_controldata工具用来显示数据库目录下control文件的信息。
3.28 gs_resetxlog
3.28.1 gs_resetxlog是一个重新设置数据库事务文件的工具。使用该工具后,数据库有可能会含有不完整的数据,属于高危操作。只有在数据库无法启动、用户强烈期望数据库启动的场景下使用。除此之外不建议使用。
3.29 pscp
3.29.1 用于执行数据库节点间的访问,发送文件给远程节点。
3.30 pssh
3.30.1 用于执行数据库节点间的访问,发送命令给远程节点。
3.31 py_pstree.py
3.31.1 py_pstree.py用来获取指定进程的所有父进程或者所有子进程。

4 统一数据库管理工具

4.1 CM(Cluster Manager)是一款数据库管理模块。支持自定义资源监控,提供了数据库主备的状态监控、网络通信故障监控、文件系统故障监控、故障自动主备切换等能力。提供了丰富的数据库管理能力,如节点、实例级的启停,数据库实例状态查询、主备切换、日志管理等。
4.2 集群管理,负责实例故障后的高可用切换能力
4.3 组件
4.3.1 OMM(om_monitor)
管理服务组件,由crontab定时任务控制拉起(周期1分钟),OMM主要负责OMM、etcd、cm_agent进程的保活及启停。其故障会产生如下影响:

etcd、cm_agent进程保活及启停能力丢失。
4.3.2 etcd(etcd)
管理服务组件,由OMM拉起(周期1秒),etcd是集群高可用的顶层组件,能力可以协助CMS选主、持久化集群仲裁信息。其故障会产生如下影响:

  • CMS无主,进而导致集群无法查看状态、无法进行高可用切换(DCF自仲裁模式除外)。

4.3.3 CM Agent(cm_agent)
CMA主要负责CMS、DN进程的保活及启停,仲裁指标采集、仲裁命令执行等。其故障会产生如下影响:

  • CMS、DN进程保活及启停能力丢失。
  • 节点脱管,实例级故障检测能力丢失,被管理实例状态未知。

cm_agent是部署在数据库每个主机上,用来启停和监控各个数据库实例进程的数据库管理组件。
4.3.4 CM Server(cm_server)
是集群的仲裁中心,依赖etcd(或启用DCC)实现自选主。CMS无主会产生以下影响:

  • 集群状态无法查看。
  • 整个集群的高可用切换能力丢失(DCF自仲裁模式除外)。
  • 容灾barrier无法推进。
  • DCC模式下,无法持久化集群信息。

4.3.5 DN(gaussdb)
数据服务组件
4.4 cm_ctl工具
4.4.1 cm_ctl是GaussDB提供的用来控制数据库实例服务的工具。该工具主要供OM调用,及数据库实例服务自恢复时使用。
4.4.2 主要功能
启动数据库实例服务、AZ的所有实例、单个主机上的所有实例或单独启动某个实例进程。
停止数据库实例服务、AZ的所有实例、单个主机上的所有实例或单独停止某个DN实例进程。
重启逻辑数据库实例服务。
查询数据库实例状态或者单个主机的状态。
切换主备实例或重置实例状态。
重建备机。
查看数据库实例配置文件。
设置日志级别、一主多备数据库实例部署下cm_server的仲裁模式、AZ之间的切换模式。
获取日志级别,一主多备数据库实例部署下cm_server的仲裁模式、AZ之间的切换模式。
检测实例进程状态。

4.5 安全-证书管理
4.5.1 证书有效期的检测周期为1天,可通过ssl_cert_expire_check_interval设置。证书有效期剩余90天时会开始产生告警,可通过ssl_cert_expire_alert_threshold设置(配置参数详见ssl_cert_expire_alert_threshold)。
4.5.2 security_mode
参数说明:控制是否以安全模式启动DN。打开这个开关,则以安全模式启动DN;否则,以非安全模式启动DN。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2210298.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Golang | Leetcode Golang题解之第474题一和零

题目: 题解: func findMaxForm(strs []string, m, n int) int {dp : make([][]int, m1)for i : range dp {dp[i] make([]int, n1)}for _, s : range strs {zeros : strings.Count(s, "0")ones : len(s) - zerosfor j : m; j > zeros; j--…

【网络基础知识】网络通信概述与TCPIP、UDP协议

网络基础知识 介绍网络基础知识,譬如网络通信概述、OSI 七层模型、IP 地址、TCP/IP 协议族、TCP 和 UDP 协议等等, 旨在以引导入门、了解为主,其中并不会深入、详细地介绍这些内容; Linux网络编程入门移步:【Linux网络…

使用CSS和HTML实现3D图片环绕效果

使用CSS和HTML实现3D图片环绕效果 在本篇博客中,将介绍如何使用HTML和CSS实现一个3D图片环绕效果。这个效果不仅具有视觉吸引力,而且具有高度的互动性,鼠标悬停时动画会暂停。接下来将一步步讲解这个效果的实现过程。 1. 效果 2. 页面结构与…

Python人脸识别技术进阶篇

在上一篇文章中,我们介绍了如何使用Python进行基本的人脸识别。本文将深入探讨人脸识别技术的高级应用,包括如何优化识别性能、处理复杂环境下的识别挑战以及如何利用深度学习模型来提高识别准确性等话题。 人脸识别的原理回顾 人脸识别流程 人脸识别…

使用 llamafile 以单个文件运行本地大模型

在开发 GenAI 应用时,有一个在本地运行的大模型是非常重要的,可以很方便地进行开发和测试。目前有几个流行的在本地运行大模型的选项,包括 Ollama 和 LM Studio。 这里介绍的是 llamafile。llamafile 是 Mozilla 支持的开源项目。llamafile …

OceanBase + DolphinScheduler,搭建分布式大数据调度平台的实践

本文整理自白鲸开源联合创始人,Apache DolphinScheduler PMC Chair,Apache Foundation Member 代立冬的演讲。主要介绍了DolphinScheduler及其架构、DolphinScheduler与OceanBase 的联合大数据方案。 DolphinScheduler是什么? Apache Dolphi…

第十六章 RabbitMQ延迟消息之延迟插件优化

目录 一、引言 二、优化方案 三、核心代码实现 3.1. 生产者代码 3.2. 消息处理器 3.3. 自定义多延迟消息封装类 3.4. 订单实体类 3.5. 消费者代码 四、运行效果 一、引言 上一章节我们提到,直接使用延迟插件,创建一个延迟指定时间的消息&…

一款零依赖、跨平台的流媒体协议处理工具,支持 RTSP、WebRTC、RTMP 等视频流协议的处理

大家好,今天给大家分享一款功能强大的流媒体协议处理工具go2rtc,支持多种协议和操作系统,具有零依赖、零配置、低延迟等特点。 项目介绍 go2rtc可以从各种来源获取流,包括 RTSP、WebRTC、HomeKit、FFmpeg、RTMP 等,并…

第一个servlet程序

文章目录 在原有工程上建立模块前端配置前后端映射关系添加外部依赖库后端代码启动配置 在原有工程上建立模块 添加web框架 前端 应用结构 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>第一…

【云原生技术】Docker容器进阶知识

文章目录 namespace概述一、namespace的基本概念二、namespace的主要作用三、namespace的类型四、namespace的操作五、namespace在容器技术中的应用 cgroup一、cgroup的基本概念二、cgroup的主要功能三、cgroup的子系统介绍四、cgroup的应用场景五、cgroup的使用与管理 cgroup和…

uniapp-小程序开发0-1笔记大全

uniapp官网&#xff1a; https://uniapp.dcloud.net.cn/tutorial/syntax-js.html uniapp插件市场&#xff1a; https://ext.dcloud.net.cn/ uviewui类库&#xff1a; https://www.uviewui.com/ 柱状、扇形、仪表盘库&#xff1a; https://www.ucharts.cn/v2/#/ CSS样式&…

余 弦 曲 线

1&#xff0e;问题描述 在屏幕上画出余弦函数cos&#xff08;x&#xff09;曲线&#xff0c;如图1.6所示。 图1.6 余弦函数cos&#xff08;x&#xff09;曲线 2&#xff0e;问题分析 连续的曲线是由点组成的,点与点之间距离比较近&#xff0c;看上去就是曲线了&#xff0c;…

uni-app 如何全局设置,获取app.vue里面的值

在globalData里设置一个值 通过下面方法修改 this.$options.globalData.$versonStatus status 在页面中通过getApp()获取 getApp().globalData.$versonStatus

<<迷雾>> 第11章 全自动加法计算机(3)--存储器示例 示例电路

info::操作说明 将一组比特单元扩展为多组的结果, 操作原理类似 注: 一次只能操作一组, 此处需进一步引入地址译码器才能具体进行操作, 见后面的例子, 此处仅展示结构原理 primary::在线交互操作链接 https://cc.xiaogd.net/?startCircuitLinkhttps://book.xiaogd.net/cyjsjdm…

C++模板初阶速成

温馨提示&#xff1a;本篇文章依旧是c速成系列的文章&#xff0c;但和以往有所不同的是&#xff0c;本篇文章带大家简单了解并能够学会使用模板 泛型编程 概念&#xff1a;编写与类型无关的通用代码&#xff0c;是代码复用的一种手段。 什么是复用&#xff1f; 简单来说就是…

分组相关 -- EoO原理

EoO (Ethernet over OTN) 是将以太网信号处理后&#xff0c;经过封装、映射后上OTN系统&#xff0c;通过WDM通道来传送的技术。传统的OTN承载ETH专线&#xff0c;不支持限速&汇聚等场景。引入EoO技术后&#xff0c;支持LAG、QoS、OAM等L2层的功能特性&#xff0c;实现端口限…

RBTree(红黑树)的介绍和实现

欢迎来到杀马特的主页&#xff1a;羑悻的小杀马特.-CSDN博客 目录 ​编辑 一红黑树介绍&#xff1a; 1.1红黑树概念&#xff1a; 1.2红黑树遵循的原则&#xff1a; 1.3红黑树效率分析&#xff1a; 二.红黑树的实现&#xff1a; 2.1红黑树结构&#xff1a; 2.2红黑树节点…

TMGM:下周全球市场分析

本周&#xff0c;美国股市表现强劲&#xff0c;标普500指数和道琼斯工业平均指数均刷新了历史最高记录。这一涨势得到了美联储公开市场委员会&#xff08;FOMC&#xff09;会议纪要的支撑&#xff0c;纪要显示大部分官员都支持9月份实施重大的50个基点降息。 在澳大利亚&#…

宝安网站建设中的响应式设计

宝安网站建设中的响应式设计 在数字化时代&#xff0c;网站已成为企业展示形象、吸引客户的重要平台。而在宝安地区&#xff0c;随着互联网的发展&#xff0c;越来越多的企业意识到响应式设计的重要性。响应式设计不仅能够提升用户体验&#xff0c;还能为企业带来更大的市场竞争…

.NET 一款通过DCOM实现系统提权的工具

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等&#xff08;包括但不限于&#xff09;进行检测或维护参考&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…