首页 > 数据库 >mysql基础~基础知识问答

mysql基础~基础知识问答

时间:2023-07-20 14:22:24浏览次数:34  
标签:主库 binlog 基础知识 切换 mysql 从库 问答 orc

一 orc系列

1  orc切换模式常用的是主动触发高可用切换(例行维护),被动高可用切换(mysql负载很高,mysql主库down掉) 

2 orc在以下情况不会发生切换

  1. 从库发生故障,主从复制异常,从库挂掉,从库出现延时
  2. 主库hang住,主库出现too manay connetions(因为orc建立的长连接,即便连接打满,也不会出现异常),orc到主库网络不通

3 发现从库利用的是检测dump线程的地址

4 切换流程

  1. 检测原主,出现故障( orc访问master不通(一次确认),不能访问slave或者所有slave-io_thread异常(二次确认))
  2. 选择候选主库(必须是直连 从库,规则允许当主,延时小于阈值)
  3. 设置原主只读
  4. 候选主库等待延时日志应用完成
  5. 打开候选主库的读写
  6. 将原主变成新主的从库
  7. 调用hook脚本,完成其他一系列工作,比如vip绑定等

5  orc一些问题

       1. 实际生产没有遇到过切换失败的场景

       2. 即便开了半同步复制,orc切换依然可能丢数据,因为orc判断最新binlog位点的方式是 ExecBinlogCoordinate,通过判断最新执行的binlog位点信息,有可能有这一种情况,io_thread出现网络问题,导致接收到的binlog并不完整,最终导致出现数据差异化

 

二 灾备架构系列

 

三 

标签:主库,binlog,基础知识,切换,mysql,从库,问答,orc
From: https://www.cnblogs.com/danhuangpai/p/17568311.html

相关文章

  • Mysql学习笔记(一)
    一、基础概念1.术语数据库(DB)数据库管理系统(DBMS)SQL(StructuredQueryLanguage)2.关系型数据库(二维表)二、SQL1.分类DDL(DataDefinitionLanguage)数据定义语言(操作数据库、表、字段)DML(DataManipulationLanguage)数据操作语言(增删改)DQL(DataQueryLanguage)......
  • kubectl apply -f mysql.yaml error: the path "mysql.yaml" does not exist
    问题解决:kubectlapply-fmysql.yamlerror:thepath"mysql.yaml"doesnotexist在使用Kubernetes进行容器编排时,我们经常使用kubectl命令行工具与Kubernetes集群进行交互。其中,kubectlapply命令用于创建或更新Kubernetes资源的配置文件。然而,有时在执行kubectlapply-fmys......
  • kernel: mysqld invoked oom-killer: gfp_mask
    LinuxOOM-Killer:解释与代码示例引言当在运行中的Linux系统中内存不足时,操作系统会调用OOM-Killer(OutofMemoryKiller)来终止某些进程以释放内存。这通常发生在操作系统无法为新的进程或正在运行的进程分配所需的内存时。本文将介绍OOM-Killer的工作原理并提供相应的代码......
  • kali中安装mysql
    Kali中安装MySQL的步骤在本文中,我将向你展示如何在KaliLinux中安装MySQL。MySQL是一种流行的关系型数据库管理系统,用于存储和检索数据。以下是安装MySQL的步骤:步骤操作1更新软件包列表2安装MySQL服务器3启动MySQL服务4配置MySQL安全性5测试MySQL安装......
  • mysql bigint java 无符号
    如何在Java中实现MySQL的无符号bigint字段在本篇文章中,我将教你如何在Java中实现MySQL的无符号bigint字段。我们将分为以下几个步骤来实现这个目标:创建一个数据库表在Java中连接到MySQL数据库执行创建表的SQL语句插入数据到表中查询并展示数据下面是每个步骤需要执行的代......
  • mysql any some 区别
    MySQL中的any和some的区别在MySQL数据库中,我们经常会遇到使用any和some来比较子查询结果的情况。这两个关键词在功能上非常相似,但也有一些微小的区别。本文将介绍any和some的区别,并通过代码示例来说明它们的使用方法和效果。any和some的作用any和some的作用是用来比较子查询结果......
  • MySQL 查询按序累加数值
    Mysql假如我有一个表,有字段day,money,day记录我攒钱的第几天,money记录我当天攒的钱数,请写一个查询,返回我攒钱的天数,和这一天之前(包含这一天)一共攒的钱数SELECTday,money,(@cumulative_money:=@cumulative_money+money)AScumulative_moneyFROMyour_table_name,......
  • mysql ZIDONG备份
    MySQL自动备份流程为了确保数据库的安全和可靠性,我们需要定期对MySQL数据库进行备份。为了减少人工操作,我们可以通过编写脚本实现自动备份。下面是MySQL自动备份的流程:步骤描述1连接到MySQL数据库2创建备份文件夹3执行备份命令4关闭MySQL连接下面将详......
  • mysql NULL 索引
    实现MySQLNULL索引简介在MySQL中,NULL值表示一个字段没有被赋值,但是有时候我们需要对NULL值进行索引以提高查询性能。本文将介绍如何在MySQL中实现NULL索引。流程以下是实现MySQLNULL索引的步骤:步骤描述1创建一个包含NULL值的列2创建索引3......
  • mysql MGR
    使用MySQLMGR概述MySQLMGR(MySQLGroupReplication)是MySQL官方提供的一种高可用性和高性能的解决方案,它通过将数据库服务器组织成一个组来提供数据的复制和自动故障转移。在这篇文章中,我将向你介绍如何使用MySQLMGR。流程概览下面是使用MySQLMGR的一般流程:步骤描述......