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

【YashanDB知识库】数据库一主一备部署及一主两备部署时,主备手动切换方法及自动切换配置

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7686588.html?templateId=1718516

问题现象

数据库在正常或异常情况下,如何实现主备切换

问题的风险及影响

数据库主备切换若没有正确配置,在数据库发生主节点故障时,会影响业务的使用

问题影响的版本

23.2整个大版本

问题发生的原因

1、若主节点所在主机因为其他原因导致资源紧张的情况下,想要切换备节点为主节点更好的提供服务,此时就需要在数据库正常的情况下执行手动主备切换

2、数据库主节点异常时,若配置了自动主备切换,则数据库在心跳时间内会自动切换,若没有配置自动切换就只能执行手动切换

解决方法及规避方法

以下主要示例数据库一主一备部署和一主两备部署的情况

一主一备部署

1、手动切换

YashanDB支持在主备库同步正常的情况下进行主备库的手动Switchover切换,也支持在主库异常的情况下进行备库的手动Failover切换,但在开启自动选主时无法使用Failover切换。

(1)Switchover切换

Switchover切换方式适用于主备库同步正常的情况,可选择任意一个备库执行操作。

● Switchover过程中,主库已连接的会话将全部断连,并且主库不可连接新的会话,直到切换完成或失败。

● Switchover过程中,如果主备网络断连,切换将失败。

● 如果备库transport_lag或apply_lag不为0,即备库有待接收和回放的redo,Switchover过程可能时间较久,通过查询V$RECOVERY_PROGRESS视图查看剩余回放时间。

● Switchover完成后,主备库会重新进行连接,将出现短暂的网络断连。

示例:

检查主备库同步状态,确认主备库同步无异常,并确认主备库的角色

yasboot cluster status -c yashandb -d

image2024-10-17_10-50-47

备节点执行switchover切换主备节点

ALTER DATABASE SWITCHOVER;

image2024-10-17_11-6-54

可以看到主备切换完成

(2)failover切换

Failover切换方式适用于主库损坏,或者服务器宕机等不可用时,必须立即进行故障切换,尽快恢复业务。

前提是未开启自动切换

yasboot election config show -c yashandb

image2024-10-17_11-15-22

备节点为readonly状态

SELECT database_id,database_name,open_mode,database_role,protection_mode FROM V$DATABASE;

image2024-10-17_14-45-8

kill主节点进程,模拟主节点故障

image2024-10-17_14-59-54

备节点执行failover主备切换

ALTER DATABASE FAILOVER;

SELECT database_id,database_name,open_mode,database_role,protection_mode FROM V$DATABASE;

image2024-10-17_15-1-12

升主成功

image2024-10-17_15-1-53

接下来进行旧主降备操作,将旧主库实例启动到MOUNT状态

yasboot node start -c yashandb -n 1-2 -m mount

image2024-10-17_15-5-33

执行降备命令,并OPEN数据库

ALTER DATABASE CONVERT TO PHYSICAL STANDBY;

ALTER DATABASE OPEN;

image2024-10-17_15-35-16

2、自动切换

启用基于yasom的仲裁选主开关

yasboot election enable on -c yashandb

image2024-10-17_15-54-42

kill主机点数据库服务,备节点会自动切主

yasboot cluster status -c yashandb -d

image2024-10-17_15-56-2

一主两备部署

image2024-10-17_16-23-47

查看主备库的保护模式

image2024-10-17_16-24-32

当前为最大保护模式

查看自动选主开关,主备节点都查看

SHOW PARAMETER HA_ELECTION_ENABLED;

image2024-10-17_16-32-9

当前为开启,若是关闭状态,执行 ALTER SYSTEM SET HA_ELECTION_ENABLED=TRUE; 开启,主备节点都执行

kill主节点数据库服务,模拟主库挂点

image2024-10-17_16-47-56

主节点切换完成

问题分析方法及处理过程

数据库部署后先检查是否配置自动切换

(1)一主一备部署

yasboot election config show -c yashandb

若Automatic Failover为DISABLED,则自动切换为关闭状态

执行yasboot election enable on -c yashandb开启

(2)一主两备部署

SHOW PARAMETER HA_ELECTION_ENABLED查看,若为TRUE则为开启状态

否则执行ALTER SYSTEM SET HA_ELECTION_ENABLED=TRUE开启

经验总结

目前,数据库一主一备部署,自动切换时默认关闭的,需要手动开启;一主两备部署,数据库默认是最大保护模式,主备自动切换是默认开启的


http://www.kler.cn/a/442225.html

相关文章:

  • vue项目配置多语言
  • 使用 Helm 安装 Redis 集群
  • Vue数据响应式,reaction,ref的使用
  • python中的RPA->playwright自动化录制脚本实战案例笔记
  • 春秋杯-WEB
  • 网络IO与IO多路复用
  • 算法,递归和迭代
  • 交换机堆叠和集群
  • 线性池学习
  • vue登录成功之后的token处理
  • 【JS/TS鼠标气泡跟随】文本提示 / 操作提示
  • access数据库代做/mysql代做/Sql server数据库代做辅导设计服务
  • Jackson @JsonRootName 注解
  • Python | 虚拟环境04 - Qt Creator设置Python虚拟环境
  • HarmonyOS Next开发工具DevEco Studio介绍:ASan与TSan检测根治你的C++恐惧症
  • 使用k6进行kafka负载测试
  • 允许某段网络访问Linux服务器上的MariaDB
  • Excel技巧:使用PowerQuery批量提取文件名
  • 如何在铁威马NAS上安装内网穿透,实现对铁威马NAS的远程访问管理
  • el-table表格嵌套子表格:展开所有内容;对当前展开行内容修改,当前行默认展开;
  • OpenCV相机标定与3D重建(24)计算两个二维点集之间的最佳仿射变换矩阵(2x3)函数estimateAffine2D()的使用
  • 【第七节】Git 进阶操作
  • 土地档案管理关系[源码+文档]
  • 包子凑数(2017年蓝桥杯试题H)
  • 提前对风险进行预警并实施管控,运用AI技术将管理推向新时代的智慧地产开源了。
  • 大腾智能CAD:国产云原生三维设计新选择