首页 > 数据库 >openGauss学习笔记-176 openGauss 数据库运维-实例主备切换

openGauss学习笔记-176 openGauss 数据库运维-实例主备切换

时间:2023-12-28 20:35:15浏览次数:29  
标签:switchover gs 运维 备机 主备 切换 ctl openGauss

openGauss学习笔记-176 openGauss 数据库运维-实例主备切换

176.1 操作场景

openGauss在运行过程中,数据库管理员可能需要手工对数据库节点做主备切换。例如发现数据库节点主备failover后需要恢复原有的主备角色,或怀疑硬件故障需要手动进行主备切换。级联备机不能直接转换为主机,只能先通过switchover或者failover成为备机,然后再切换为主机。

img 说明:

  • 主备切换为维护操作,确保openGauss状态正常,所有业务结束后,再进行切换操作。
  • 在开启极致RTO时,不支持级联备机。因为在极致RTO开启情况下,备机不支持连接,所以无法与级联备机同步数据。
  • 级联备机切换后,主机的synchronous_standby_names参数不会自动调整,因此可能需要手动调整主机的synchronous_standby_names参数,否则有可能会导致主机的写业务阻塞。

176.2 操作步骤

  1. 以操作系统用户omm登录数据库任意节点,执行如下命令,查看主备情况。

    gs_om -t status --detail
    
  2. 以操作系统用户omm登录准备切换为主节点的备节点,执行如下命令。

    gs_ctl switchover -D /home/omm/cluster/dn1/
    

    /home/omm/cluster/dn1/为备数据库节点的数据目录。

    img 须知: 对于同一数据库,上一次主备切换未完成,不能执行下一次切换。当业务正在操作时,发起switchover,可能主机的线程无法停止导致switchover显示超时,实际后台仍然在运行,等主机线程停止后,switchover即可完成。比如在主机删除一个大的分区表时,可能无法响应switchover发起的信号。

    主机故障时,可以在备机执行如下命令。

    gs_ctl failover -D /home/omm/cluster/dn1/
    
  3. switchover或failover成功后,执行如下命令记录当前主备机器信息。

    gs_om -t refreshconf
    

176.3 示例

将数据库节点备实例切换为主实例。

  1. 查询数据库状态。

    gs_om -t status --detail
    
    [   Cluster State   ]
    
    cluster_state   : Normal
    redistributing  : No
    current_az      : AZ_ALL
    
    [  Datanode State   ]
    
        node             node_ip         port      instance                            state
    --------------------------------------------------------------------------------------------------
    1  pekpopgsci00235  10.244.62.204    5432      6001 /home/wuqw/cluster/dn1/   P Primary Normal
    2  pekpopgsci00238  10.244.61.81     5432      6002 /home/wuqw/cluster/dn1/   S Standby Normal
    
  2. 登录备节点,进行主备切换。另外,switchover级联备机后,级联备机切换为备机,原备机降为级联备。

    gs_ctl switchover -D /home/wuqw/cluster/dn1/
    [2020-06-17 14:28:01.730][24438][][gs_ctl]: gs_ctl switchover ,datadir is -D "/home/wuqw/cluster/dn1"
    [2020-06-17 14:28:01.730][24438][][gs_ctl]: switchover term (1)
    [2020-06-17 14:28:01.768][24438][][gs_ctl]: waiting for server to switchover............
    [2020-06-17 14:28:11.175][24438][][gs_ctl]: done
    [2020-06-17 14:28:11.175][24438][][gs_ctl]: switchover completed (/home/wuqw/cluster/dn1)
    
  3. 保存数据库主备机器信息。

    gs_om -t refreshconf
    Generating dynamic configuration file for all nodes.
    Successfully generated dynamic configuration file.
    

176.4 错误排查

如果switchover过程中出现失败,请根据日志文件中的日志信息排查错误,参见日志参考

176.5 异常处理

异常判断标准如下:

  • 业务压力下,主备实例切换时间长,这种情况不需要处理。

  • 其他备机正在build的情况下,主机需要发送日志到备机后,才能降备,导致主备切换时间长。这种情况不需要处理,但应尽量避免build过程中进行主备切换。

  • 切换过程中,因网络故障、磁盘满等原因造成主备实例连接断开,出现双主现象时,此时请参考如下步骤修复。

    img 警告: 出现双主状态后,请按如下步骤恢复成正常的主备状态。否则可能会造成数据丢失。

  1. 执行以下命令查询数据库当前的实例状态。

    gs_om -t status --detail
    

    若查询结果显示两个实例的状态都为Primary,这种状态为异常状态。

  2. 确定降为备机的节点,在节点上执行如下命令关闭服务。

    gs_ctl stop -D /home/omm/cluster/dn1/
    
  3. 执行以下命令,以standby模式启动备节点。

    gs_ctl start -D /home/omm/cluster/dn1/ -M standby
    
  4. 保存数据库主备机器信息。

    gs_om -t refreshconf
    
  5. 查看数据库状态,确认实例状态恢复。

标签:switchover,gs,运维,备机,主备,切换,ctl,openGauss
From: https://blog.51cto.com/shuchaoyang/9018019

相关文章

  • 重磅发布|博睿数据2023年度精选案例集—— IT运维之光
    当前,数字经济已经成为全球经济增长的重要引擎。随着新技术的飞速发展,企业数字化转型机遇不断涌现,而稳定、安全、可靠的IT运维环境是实现数字化转型的关键。在此背景下,AIOps智能运维正成为企业高效管控种类繁多数量庞大的物理设备、精准定位故障信息、实时防护网络攻击、快速迭代需......
  • Databend 部署与运维概要:本地部署 Meta 服务并利用 Kubernetes 管理 Query 服务
    本指南旨在介绍如何部署和运维Databend,并且采用结合本地部署Meta服务和使用K8s管理Query服务的形式,以平衡元数据管理持久化和计算资源弹性调度的需求。由于Databend的部署逻辑在单机模式和集群模式下的一致性,部署模式可以从单机轻松拓展到多节点集群,所以本指南中只基于......
  • 运维和编程语言
    1.脚本注释,脚本开发规范1.1.在shell脚本中,#后面的内容代表注释掉的内容,提供给开发者或使用者观看,系统会忽略此行1.2.注释可以单独写一行,也可以跟在命令后面1.3.尽量保持爱写注释的习惯,便于以后回顾代码的含义,尽量使用英文,而非中文 2.执行shell脚本的方式:2......
  • 【干货】Linux运维人员必备的实用工具!
    对于Linux运维人员来讲,工具是必不可少的,因为一款好的工具不仅可以保证服务器正常运行,还可以帮助我们排除故障,那么Linux运维人员必备的实用工具有哪些?本文为大家详细介绍一下。1、Nethogs:查询进程占用带宽情况Nethogs是一个终端下的网络流量监控工具,它的特别之处在于可......
  • 监控易:运维报告的精细化指南
        监控易是一款功能强大的监控工具,它提供了实时报告、TOPN报告、统计报告、流量统计、服务器报告、网络设备报告、故障报告和告警报告等多种报告,以便用户能够全面了解和分析系统的运行状况。    实时报告:实时报告是监控易的重要功能之一,它能够实时展示监控设备......
  • openGauss学习笔记-175 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作
    openGauss学习笔记-175openGauss数据库运维-备份与恢复-导入数据-管理并发写入操作示例本章节以表test为例,分别介绍相同表的INSERT和DELETE并发,相同表的并发INSERT,相同表的并发UPDATE,以及数据导入和查询的并发的执行详情。CREATETABLEtest(idint,namechar(50),addressva......
  • openGauss学习笔记-174 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作
    openGauss学习笔记-174openGauss数据库运维-备份与恢复-导入数据-管理并发写入操作174.1事务隔离说明openGauss基于MVCC(多版本并发控制)并结合两阶段锁的方式进行事务管理,其特点是读写之间不阻塞。SELECT是纯读操作,UPDATE和DELETE是读写操作。读写操作和纯读操作之间并不会发......
  • LinkSLA管家式运维:为企业打造定制化 IT 支持体系
    引言在数字化转型的浪潮中,企业信息系统繁多,涉及人员复杂,且企业经营管理活动对IT系统的依赖程度越来越高。传统的运维模式已经不能满足企业对运维工作全面性、灵活性、稳定性和安全性的需求。管家式运维作为一种新型服务模式,以其个性化和全面性的服务理念,为企业带来了更为精细和高效......
  • 监控易:精细化运维工单与知识库管理系统
       在当今数字化时代,运维管理作为企业运营的核心环节,其高效性和智能化越来越受到重视。我们针对这一需求,监控易推出的运维管理工具——工单与知识库管理系统,旨在帮助企业实现更智能、更高效的运维管理。 一、工单管理:全面掌握运维任务状态   监控易工单与知识库管理系......
  • 监控易:网络设备运维,助力企业集中统一监控
       监控易作为一款卓越的运维管理工具,始终秉持以设备为核心的监控管理理念,帮助企业实现对各类设备的全面、高效、可靠的监控管理。以下是监控易在设备运维管理方面的核心理念和优势功能的详细介绍。一、设备接入与管理   监控易支持将各类设备(如服务器、应用和业务、网......