iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL组复制的要求和限制
  • 854
分享到

MySQL组复制的要求和限制

2024-04-02 19:04:59 854人浏览 独家记忆
摘要

本篇内容主要讲解“Mysql组复制的要求和限制”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql组复制的要求和限制”吧!组复制的要求:1).InnoDB存

本篇内容主要讲解“Mysql组复制的要求和限制”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习mysql组复制的要求和限制”吧!

组复制的要求:

1).InnoDB存储引擎:数据必须存储在事务型的InnoDB存储引擎中。事务以乐观形式执行,然后在提交前会检测冲突问题。如果有冲突,为了维护组中一致性,有些事务必须回滚。这意味着需要事务型的存储引擎。此外,InnoDB 存储引擎提供了一些额外的功能,它们结合组复制时能更好地管理和处理冲突。

2).Primary Keys:每张需要被组复制的表都必须显式定义一个主键。主键在判断事务是否冲突扮演极其重要的角色:通过主键来准确识别每个事务中修改了表中的哪些行。(实际上是将主机hash成写集,然后由certifier来并发事务之间的检测冲突性)

3).使用IPv4 地址:Mysql组复制使用的组通信引擎组件只支持 IPv4。因此,必须使用IPv4的网络

4).良好的网络性能:组复制设计的初衷是部署在集群环境中,集群中的节点相互之间都非常近,因此除了网络延迟,网络带宽也会影响组复制。

组复制的限制:

1).Replication Event Checksums:由于对复制事件校验的设计缺陷,目前组复制不能使用它们。因此,需要设置--binlog-checksum=NONE。

2).Gap Locks:在验证阶段中(certification process),不会考虑 Gap Locks,因此在 InnoDB 的外部无法获取任何关于Gap 的信息。

注意:除非你的应用程序或业务需求依赖于REPEATABLE READ(MySQL默认该隔离级别),否则建议在组复制中使用READ COMMITTED隔离级别。在READ COMMITTED隔离级别中,InnoDB基本上不会使用Gap Locks,这将使得InnoDB自带的冲突探测能和组复制的冲突探测相互对齐从而保持一致。

3).Table Locks and Named Locks:验证阶段(certification process)中不考虑表锁和命名锁(见get_lock())。

4).不支持 SERIALIZABLE 隔离级别:在多主模型下,默认不支持该隔离级别。如果在多主模型下设置了该隔离级别,将拒绝提交事务。

5).不支持并发的 DDL 和 DML 操作:不支持在多主模型下不同节点上同时执行DDL和DML修改同一对象。在某节点上对某对象执行DDL语句时,如果在其他节点同时执行DML修改该对象,将有一定风险探测到冲突。(译注:是 DDL+DML 的并发,DDL+DDL 的并发也不允许。这是因为MySQL中没有DDL事务,不能保证DDL的原子性,当DDL和DML同时操作某一个对象,可能DDL修改后,DML将因为对象结构的改变而无法执行,继而回滚)

6).不支持级联的外键约束:多主模型的组(所有节点都配置了group_replication_single_primary_mode=OFF)不支持多级外键依赖,特别是表上定义了级联的外键约束(CASCADING foreign key constraints)。这是因为多主模型下执行外键约束的级联操作可能会出现未检测到的冲突,从而导致组内成员间数据不一致。因此,我们推荐在使用多主模型时,在每个节点上都设置group_replication_enforce_update_everywhere_checks=ON以避免出现未检测到的冲突。在单主模型下没有这种问题,因为没有并发写操作,从而不可能会出现未被探测到的冲突。

7).大事务可能会错误:如果一个事务非常大,导致GTID的内容非常多,以至于无法在 5 秒内通过网络传输完成,这时组成员间的通信将失败。要避免该问题,可以尽可能地限制事务的大小。例如,将LOAD DATA INFILE的文件切割为多个小块。

8).多主模型可能出现死锁:在多主模型下,SELECT ... FOR UPDATE语句可能会导致死锁。这是因为组内成员之间不会共享锁资源(译注:share nothing),因此这样的语句可能达不到预期的结果。

到此,相信大家对“MySQL组复制的要求和限制”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL组复制的要求和限制

本文链接: https://www.lsjlt.com/news/59785.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL组复制的要求和限制
    本篇内容主要讲解“MySQL组复制的要求和限制”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL组复制的要求和限制”吧!组复制的要求:1).InnoDB存...
    99+
    2022-10-18
  • MySQL 5.7组复制的要求和限制有哪些
    这期内容当中小编将会给大家带来有关MySQL 5.7组复制的要求和限制有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 限制和要求:1....
    99+
    2022-10-19
  • Java后端限制频繁请求和重复提交的实现
    目录步骤一、写限制注解步骤二、解析注解步骤三、控制层注解使用当前端按连续请求多次,请求过于频繁或者是多次重复提交数据,对系统或者是数据造成了一点的损害。 为了解决这个问题,下面介绍了...
    99+
    2022-11-13
  • Java 限制前端重复请求的实例代码
    目录背景及用途实现步骤背景及用途 前端页面出现卡顿,用户反复点击操作按钮,导致后台接口短时间内多次提交 实现步骤 设置切面,增加注解,导致在规定时间内该接口不可重复调用 设置一个接口...
    99+
    2022-11-13
    Java 限制重复请求 Java重复请求
  • MySQL的主从复制、半同步复制和主主复制的概念
    本篇内容主要讲解“MySQL的主从复制、半同步复制和主主复制的概念”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL的主从复制、半同步复制和主主复制的概念...
    99+
    2022-10-18
  • mysql 基于组提交的并发复制小结
    一:MySQL 5.7并行复制初理解...
    99+
    2022-10-18
  • 满足MySQL复制表结构和数据需求的代码怎么写
    下文给大家带来关于满足MySQL复制表结构和数据需求的代码怎么写,感兴趣的话就一起来看看这篇文章吧,相信看完满足MySQL复制表结构和数据需求的代码怎么写对大家多少有点帮助吧。    &...
    99+
    2022-10-18
  • mysql中DCL常用的用户和权限控制
    目录前言一、用户控制管理二、权限控制管理三、 数据库权限列表前言 本文总结了mysql中DCL,常用的一些权限控制,后续使用到其他会继续补充。 一、用户控制管理 创建用户 creat...
    99+
    2022-11-13
  • DM7对于各类数据库表名与字段名的长度限制要求
    本篇内容介绍了“DM7对于各类数据库表名与字段名的长度限制要求”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!...
    99+
    2022-10-18
  • MySQL 主从复制的原理和配置
    工作原理图: 主从复制的原理: 分为同步复制和异步复制,实际复制架构中大部分为异步复制。 复制的基本过程如下: 1).Slave上面的IO进程连接上Master,并请求从指定日志文件的指...
    99+
    2022-05-26
    MySQL 主从复制 配置
  • MySQL主从复制的原理和作用
    这篇文章将为大家详细讲解有关MySQL主从复制的原理和作用,文章内容质量较高,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。首先数据库有个“bin-log”二进制文件,记录了所有SQL语句;...
    99+
    2022-10-18
  • Mysql复制表结构、表数据的主要几种方法
    下文主要给大家带来Mysql复制表结构、表数据的主要几种方法,希望这些内容能够带给大家实际用处,这也是我编辑Mysql复制表结构、表数据的主要几种方法这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。...
    99+
    2022-10-18
  • Mysql 主从复制 及 一些要注意的特殊设置
    0.准备A.安装数据库: 主从mysql数据库 (mysql server)都安装好:版本上,mysql 允许 低版本master 配 高版本slavehttps://dev.mysql.com/doc/r...
    99+
    2022-10-18
  • MySQL主从复制原理以及需要注意的地方
    写在前面 最近在写Mycat专题,由于不少小伙伴最近要出去面试,问我能不能简单写下MySQL的主从复制原理和注意事项,因为在之前的面试中被问到了这些问题。我:可以啊,安排上了!! 主从复制原理 (1) Master ...
    99+
    2022-05-13
    MySQL 主从复制 MySQL 主从复制原理 MySQL 主从复制注意事项
  • MySQL保证复制高可用的重要参数有哪些
    这篇文章主要介绍MySQL保证复制高可用的重要参数有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!expire_logs_days ,binlog清理的时间。从库上relay-l...
    99+
    2022-10-18
  • Python和C++分别需要几步去复制并输出一个数组
    本篇文章给大家分享的是有关Python和C++分别需要几步去复制并输出一个数组,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Python 和 ...
    99+
    2022-10-19
  • MySQL复制的原理和作用是什么
    本篇内容主要讲解“MySQL复制的原理和作用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL复制的原理和作用是什么”吧!目录一、MySQL复制相关概念二、简单的一主一从架构实现新数...
    99+
    2023-06-20
  • MySQL多主复制和MySQL Galera的安装部署方法
    本篇内容主要讲解“MySQL多主复制和MySQL Galera的安装部署方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL多主复制和MySQL Gal...
    99+
    2022-10-18
  • 如何搭建和测试MySQL高可用框架Group Replication(组复制)
    下面讲讲关于如何搭建和测试MySQL高可用框架Group Replication(组复制),文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完如何搭建和测试MySQL高可用框架Gro...
    99+
    2022-10-18
  • MySQL中的主从复制和高可用架构
    MySQL中的主从复制和高可用架构随着互联网应用和数据量的不断增长,数据库的高可用性和可扩展性变得越来越重要。MySQL作为一种使用广泛的开源关系型数据库,提供了主从复制和高可用架构的解决方案。主从复制是指将一个MySQL数据库实例作为主库...
    99+
    2023-10-22
    MySQL 主从复制 高可用架构
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作