突发!凌晨4点某制造业大厂国产数据库集群故障...

📢📢📢📣📣📣
作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验,
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理

文章目录

  • 前言
    • 1.故障现象
    • 2.故障处理
      • 2.1 单节点启动
      • 2.2 全库备份
    • 3.备机重建
    • 4.cm_ctl集群工具
    • 5.总结

前言

某制造业大厂,企业核心的生产系统使用openGauss国产数据库集群,集群无法启动,修复过程分享给大家。

1.故障现象

通过现场沟通了解到,客户机房由于异常掉电,造成一套openGauss集群的备库节点操作系统主异常无法启动,还好主节点正常,启动集群失败,此时只能通过启动单节点方式进行恢复

2.故障处理

2.1 单节点启动

由于备机已经无法访问了,导致om启动不了
通过以下命令启动即可
[omm@node1 ~]$ gs_ctl start -D /u01/opengauss/data/db -M primary

–通过此命令我们查询,集群备节点异常
[omm@node1 ~]$ gs_om -t status --detail

--登陆数据库,业务恢复正常
[omm@node1 ~]$ gsql -d postgres

2.2 全库备份

--全库数据量查询
SELECT d.datname as "Name",pg_catalog.pg_get_userbyid(d.datdba) as "Owner",pg_catalog.pg_encoding_to_char(d.encoding) as "Encoding",d.datcollate as "Collate",d.datctype as "Ctype",d.datacl AS "Access privileges",--pg_catalog.array_to_string(d.datacl, E'\n') AS "Access privileges",CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))ELSE 'No Access'END as "Size",t.spcname as "Tablespace",pg_catalog.shobj_description(d.oid, 'pg_database') as "Description"
FROM pg_catalog.pg_database dJOIN pg_catalog.pg_tablespace t on d.dattablespace = t.oid
-- where d.datname = 'database_name'
ORDER BY 1;--全库备份
gs_dumpall -f /home/omm/bkpall_20240607.sql -p 5432

3.备机重建

如果新的备机Ip改了,需要主备库参数修改后重建整个集群

主机:gs_guc set -D /u01/opengauss/data/db -c "replconninfo1='localhost=主机ip localport=port+1 localheartbeatport=port+4 localservice=port+5 remotehost=备机IP remoteport=port+1 remoteheartbeatport=port+4 remoteservice=port+5'"
gs_guc set -D /u01/opengauss/data/db -c 'remote_read_mode=off';
gs_guc set -D /u01/opengauss/data/db -c 'replication_type=1';
gs_guc set -D /u01/opengauss/data/db -h "host all omm 主机ip/32 trust"        
gs_guc set -D /u01/opengauss/data/db -h "host all omm 备机IP/32 trust" 
gs_guc set -D /u01/opengauss/data/db -c "port=主机端口"
gs_guc set -D /u01/opengauss/data/db -c "listen_addresses='主机ip'"备机:
gs_guc set -D /u01/opengauss/data/db -c "replconninfo1='localhost=备机ip localport=port+1 localheartbeatport=port+4 localservice=port+5 remotehost=主机IP remoteport=port+1 remoteheartbeatport=port+4 remoteservice=port+5'"
gs_guc set -D /u01/opengauss/data/db -c 'remote_read_mode=off';
gs_guc set -D /u01/opengauss/data/db -c 'replication_type=1';
gs_guc set -D /u01/opengauss/data/db -h "host all omm 主机ip/32 trust"        
gs_guc set -D /u01/opengauss/data/db -h "host all omm 备机IP/32 trust" 
gs_guc set -D /u01/opengauss/data/db -c "port=备机端口"
gs_guc set -D /u01/opengauss/data/db -c "listen_addresses='备机IP'"主机启动:
gs_ctl start -D /u01/opengauss/data/db -M primary备机启动
gs_ctl start -D /u01/opengauss/data/db -M standby
gs_ctl build -D /u01/opengauss/data/db -M standby -b full

如果备机修复好,还可以用,直接建逻辑复制通道后,gs_ctl build -D 数据库目录即可恢复集群

4.cm_ctl集群工具

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

5.总结

本次故障我们发现,其实国产数据库openGauss的集群故障的处理机制还是蛮完善的,尤其备库的重构很不错的

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C/C++】IO流

目录 前言: 一,C语言的I/O流 二,C的I/O流 2-1,C标准IO流 2-2,IO流的连续输入 前言: “流”即是流动的意思,是物质从一处向另一处流动的过程,是对一种有序连续且具有方向性的数据…

新品发布 | 飞凌嵌入式RK3576核心板,为AIoT应用赋能

为了充分满足AIoT市场对高性能、高算力和低功耗主控日益增长的需求,飞凌嵌入式全新推出基于Rockchip RK3576处理器开发设计的FET3576-C核心板! 集成4个ARM Cortex-A72和4个ARM Cortex-A53高性能核,内置6TOPS超强算力NPU,为您的AI…

【RK3568】制作Android11开机动画

Android 开机 logo 分为两种:静态显示和动态显示。静态显示就是循环显示一张图片;动态显示就是以特定帧率顺序显示多张图片 1.准备 android logo 图片 Android logo最好是png格式的,因为同一张图片的情况下,png 格式的比 jpg和b…

海思SS928(SD3403)部署YOLOv5-YOLOv7步骤详解

1. YOLO模型资料 本文档内容以yolov5-7.0工程、yolov5s模型为例。 a. 模型结构 详细的模型结构可以利用netron工具打开.pt或.onnx模型查看。 b. 模型参数即验证结果 其中,YOLOv5n、YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x为五种类型的预训练模型,其包含的检测类别相…

呆滞物料规范管理了,问题就好办了

对于制造企业来说,库存是生存和发展的重要保障,过高的库存会占用企业大量的资金和管理成本,影响企业的正常生产,然而多数中小制造企业还在用人工干预管理,如何控制呆滞物料成为仓储管理的一大难题。 什么是呆滞料&…

Django 创建项目及应用

1,安装 Django pip install Django3.1.5 2,创建 Django项目 django-admin startproject myshop 3,创建 Django应用 python manage.py startapp app1 4,启动 Django项目 python .\manage.py runserver 到这里项目及应用创建…

Redis中的主从复制

分布式系统中的几种Redis部署方式 为了解决一个程序只部署在一个服务器上的单点问题: 可用性问题,如果这个机器挂了,就意味着服务就中断了 一个程序只部署在一台机器上,它的性能/支持的并发量也是有限的 所以,就引…

型号FM152A,FM148R和利时

型号FM152A,FM148R和利时。控制系统的仿真,综合考虑多方面的因素,本文将用MCGS组态软件设计一个仿真实验监控平台来对其进行实时控制.,完成仿真实验监控平台的设计,型号FM152A,FM148R和利时。最终达到对水箱液位实时监控,实验数据采集,报表的输出和数据的同步显示MC…

PDF分页处理:技术与实践

引言 在数字化办公和学习中,PDF文件因其便携性和格式稳定性而广受欢迎。然而,处理大型PDF文件时,我们经常需要将其拆分成单独的页面,以便于管理和分享。本文将探讨如何使用Python编程语言和一些流行的库来实现PDF文件的分页处理。…

设置电脑定时关机

1.使用快捷键winR 打开运行界面 2.输入cmd ,点击确认,打开命令行窗口,输入 shutdown -s -t 100,回车执行命令,自动关机设置成功 shutdown: 这是主命令,用于执行关闭或重启操作。-s: 这个参数用于指定执行关…

C++ DFS

子集 78. 子集 法一:思路对每个元素进行选与不选的 选择,这样正好到最后一层 就是2的size()次方个,叶子就是节点,通过pos来控制深度 法二:通过for循环实现,且下一个栈帧的i是上一个栈帧当前元素的下一个位…

【上篇】从 YOLOv1 到 YOLOv8 的 YOLO 物体检测模型历史

YOLO 型号之所以闻名遐迩,主要有两个原因:其速度和准确性令人印象深刻,而且能够快速、可靠地检测图像中的物体。 在本文中,我将与大家分享我在阅读一篇长达 30 页的综合性论文时获得的见解,该论文深入探讨了 YOLO 模型的进步。 这篇评论全面概述了 YOLO 框架的演变过程,…

PDF转图片工具

背景: 今天有个朋友找我:“我有个文件需要更改,但是文档是PDF的,需要你帮我改下内容,你是搞软件的,这个对你应该是轻车熟路了吧,帮我弄弄吧”,听到这话我本想反驳,我是开…

PVE管理虚拟机节点

今天使用PVE命令安装虚拟机。 ‍ 查看所有虚拟机 qm list 查看所有虚拟机 ​​ 创建虚拟机 qm create 创建虚拟机 qm create 106 --name vm-test --memory 2048 --net0 virtio,bridgevmbr0基础配置 这条命令会创建一个 VM,ID 为 106​,名称为 myvm​…

Huawei 大型 WLAN 组网 AC 间漫游

AC1配置命令 <AC6005>display current-configuration # vlan batch 100 # interface Vlanif100description to_S3_CAPWAPip address 10.0.100.254 255.255.255.0 # interface GigabitEthernet0/0/1port link-type trunkport trunk allow-pass vlan 100# ip route-stati…

前端开发高频面试题

好的&#xff0c;以下是对您提出的问题的详细回答&#xff1a; 说说vue动态权限绑定渲染列表&#xff08;权限列表渲染&#xff09; Vue中动态权限绑定渲染列表通常涉及以下步骤&#xff1a; 首先&#xff0c;通过API请求从服务器获取当前用户的权限数据。在Vue组件中&#xff…

UR机器人通信汇总

文章目录 一、概述二、UR机器人通信2.1UR通信协议2.2 UR通信端口 三、UR机器人通信端口类型3.1 Modbus TCP端口&#xff08;502端口&#xff09;3.2 Dashboard端口&#xff08;29999端口&#xff09;3.3 上位机编程端口&#xff08;30001/30002/30003端口&#xff09;3.3.1 URS…

vivado HW_BITSTREAM、HW_CFGMEM

HW_比特流 描述 从比特流文件创建的硬件比特流对象hw_bitstream&#xff0c;用于关联 在Vivado的硬件管理器功能中使用硬件设备对象hw_device 设计套件。 比特流文件是从具有write_bitstream的放置和路由设计创建的 命令硬件位流对象是使用 create_hw_bitstream命令&#xff0c…

概率论与数理统计,重要知识点——全部公式总结

二、一维随机变量及其分布 五个分布参考另外一篇文章 四、随机变量的数字特征 大数定理以及中心极限定理 六、数理统计

【iOS】UI——关于UIAlertController类(警告对话框)

目录 前言关于UIAlertController具体操作及代码实现总结 前言 在UI的警告对话框的学习中&#xff0c;我们发现UIAlertView在iOS 9中已经被废弃&#xff0c;我们找到UIAlertController来代替UIAlertView实现弹出框的功能&#xff0c;从而有了这篇关于UIAlertController的学习笔记…