【MySQL】如何配置复制拓扑?

  • 前言
  • 配置大框架
  • 配置复制主服务器(master)
  • 配置复制从属服务器(slave)
  • 复制过滤规则
  • 感谢 💖

前言

关于MySQL中的复制技术相关内容,可以看看这些文章:
【MySQL】MySQL中的复制技术是什么?它有哪些组成部分?
【MySQL】怎么理解复制技术中的复制冲突(Replication Conflicts)?什么时候使用复制技术?
【MySQL】MySQL中的二进制日志,它有哪些格式?

配置大框架

  1. 根据业务,规划并绘制复制拓扑图。
  2. 标识参与复制的所有服务器,包括它们之间的主从关系。注意一个主服务器如果也从另一个主服务器复制,那么这个主服务器也是复制从属服务器。
  3. 为每个服务器配置唯一的 server-id。server-id是默认值为1的无符号 32 位整数。
  4. 配置每个主服务器
  5. 配置每个复制从属服务器以连接到主服务器
  6. 使用 START SLAVE 在每个复制从属服务器上启动复制

下面我们分别来看下如何配置复制主服务器和复制从属服务器:

配置复制主服务器(master)

  • 启用 TCP/IP 网络。各服务器之间通过网路通信。
  • 启用二进制日志。在复制过程中,每个主服务器将其日志内容发送到每个从属服务器。
  • 创建具有 REPLICATION SLAVE 权限的用户(最小权限原则)。在有多个从属服务器的主服务器上,在主机名中指定通配符可以匹配所有从站,或者创建多个用户。
    示例:CREATE USER user@slave_hostname IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO user@slave_hostname;
  • 备份主数据库作为从属服务器开始复制的起点。在启动复制之前要备份主服务器上的数据库,因为此时从属服务器上的数据库是空的,要先将备份应用到从属服务器上,保证主服务器和从属服务器的数据一致性。
    • 若使用 mysqldump 执行备份,那么可以用–master-data=2 选项自动在转储文件中加入change master to 这个语句,这条语句能让导入该主库备份的服务器变为从属服务器。不过这个语句默认加上了注释符,如果需要使用,就手动去掉注释符。
  • 使用日志坐标或GTID标识记录。
    • 在集群中必须使用GTID。GTID是全局事务标识符。能够唯一标识复制拓扑中的每个事务。它是一种更方便的日志定位技术。它由执行事务的服务器的UUID和事务的顺序编号组成。比如 0ed18583-47fd-11e2-92f3-0019b944b7f7:338 冒号前面是执行事务的服务器的UUID,冒号后面是事务的编号。

配置复制从属服务器(slave)

  • 从主服务器备份恢复。
    • 如果使用 GTID,则验证是否设置了 gtid_purged 变量。
  • 使用CHANGE MASTER TO语句配置从属服务器。在每个从属服务器上执行CHANGE MASTER TO语句,该语句用于配置从属服务器以连接到主服务器并开始复制。以下是一些常见的配置选项:
    • 主服务器的网络位置:使用MASTER_HOST和MASTER_PORT指定主服务器的主机名和端口。
    • 复制帐户用户名和口令:使用MASTER_USER和MASTER_PASSWORD指定具有REPLICATION SLAVE权限的帐户的用户名和口令。这个账户就是之前在主服务器上创建的账户。
    • 开始复制的二进制日志坐标:如果不使用GTID,使用MASTER_LOG_FILE和MASTER_LOG_POS指定从属服务器开始复制的二进制日志文件和位置。如果使用GTID,可以指定MASTER_AUTO_POSITION=1来自动获取复制位置。

复制过滤规则

BLACKHOLE存储引擎可以过滤数据,不过它是表级别的。另一种控制复制内容的方法是使用复制过滤规则。它既可以在数据库级别,也可以在表级别。
MySQL提供了复制过滤规则,通过这些规则,我们可以控制复制的范围,以确保只复制需要的数据到从属服务器。复制过滤规则可以应用于主服务器(用于写入二进制日志)或从属服务器(用于读取中继日志)。
过滤器是应用于主服务器或从属服务器的服务器选项。

  • 主服务器写入二进制日志时应用 binlog-* 过滤器
  • 从属服务器读取中继日志时应用 replicate-* 过滤器

应用过滤器时考虑优先规则:
– 数据库过滤器优先于表过滤器应用
– 表通配符过滤器 -wild- 在不使用通配符的那些过滤器之后应用
-do- 过滤器先于各个 -ignore- 过滤器应用

感谢 💖

好啦,这次的分享就到这里,感谢大家看到这里🤞

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

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

相关文章

英语——谐音篇——单词——单词密码

记忆即联结,只要能建立有效的联结,就能很好地记住。在现实生活中,声音的联结模式能很好地帮助我们记忆。几乎每个学生都曾用谐音的方法记忆一些事物,但很多人都没有意识到,我们每个人都可以通过一定的练习,…

超声波乳化具有什么特点(优点)?

梵英超声(fanyingsonic)探针式超声波乳化棒 超声波乳化是通过探针式超声波探头,高强度超声波耦合到液体中并产生声空化。超声波或声空化产生高剪切力,提供将大液滴破碎成纳米尺寸液滴所需的能量。梵英超声(fanyingsonic)提供各种探头式超声波乳化棒和配件…

skywalking 整合

安装sw docker 安装, compose 11800是外侧服务向skywaling投送数据的接口 12800是用来和web界面交互数据的接口 8080是ui界面商品 安装后,访问8080 怎么接入服务 下载 基于java的探针技术自动的上报指标数据,不用改源代码 要改下配置 后端…

与机器学习相比,人类的学习包括视觉、听觉、触觉、嗅觉、味觉的串并行混合学习...

视觉学习、听觉学习和触觉学习是人类感知和认知过程中的三个重要方面。 视觉学习:视觉学习是通过视觉感知信息进行学习和认知的过程。人类视觉系统能够感知并解读光线的反射或发射,从而获取关于物体、场景和环境的信息。视觉学习涉及识别、分类、空间感知…

Linux系统文件的三种time(atime/ctime/mtime)

使用Go操作文件,根据创建时间(或修改时间)进行不同处理。 在Mac上,文件相关的结构体字段在syscall/ztypes_darwin_arm64.go下的Stat_t: type Stat_t struct {Dev int32Mode uint16Nlink uint16Ino uint64Uid …

微信小程序页面栈超出导致页面卡死

微信小程序页面栈不能超出10个 超出10个之后无法进行点击选择跳转 解决方法: 跳转的时候,判断之前页面栈里是否存在要跳转的页面, 如果存在之前页面,就navigateBack返回之前页面, 如果不存在之前页面,判断…

精通git,没用过git cherry-pick?

前言 git cherry-pick是git中非常有用的一个命令,cherry是樱桃的意思,cherry-pick就是挑樱桃,从一堆樱桃中挑选自己喜欢的樱桃,在git中就是多次commit中挑选一个或者几个commit出来,也可以理解为把特定的commit复制到…

xyhcms getshell

下载xyhcms3.6.2021版本并用phpstudy搭建 function get_cookie($name, $key ) {if (!isset($_COOKIE[$name])) {return null;}$key empty($key) ? C(CFG_COOKIE_ENCODE) : $key;$value $_COOKIE[$name];$key md5($key);$sc new \Common\Lib\SysCrypt($key);$value $sc-…

中国沿海水产养殖空间分布数据集(1990-2022)

4年间隔的遥感信息提取中国沿海水产养殖空间分布数据集(1990-2022) 人口增长引起水产品需求快速增加,而野生捕捞产量受环境承载力的限制趋于饱和,这使得水产养殖业在过去数十年间迅速发展。水产养殖能够有效保障人类粮食安全和营养…

Web自动化测试 —— headless无头浏览器!

一、Options概述 是一个配置浏览器启动的选项类,用于自定义和配置Driver会话常见使用场景: 设置无头模式:不会显示调用浏览器,避免人为干扰的问题。设置调试模式:调试自动化测试代码(浏览器复用) 二、添加启动配置 添…

谈谈前端和后端的选择

引言 在我的印象中,也是视线里,后端都是在一个黑屏的页面,左边一个文件类,右边在不停的写sql,一只手放在键盘上,一边写,一遍不停的关联进入,感觉很无趣,他们的分享不是什么java集成&…

Java分支结构:一次不经意的选择,改变了我的一生。

👑专栏内容:Java⛪个人主页:子夜的星的主页💕座右铭:前路未远,步履不停 目录 一、顺序结构二、分支结构1、if语句2、switch语句 好久不见!命运之轮常常在不经意间转动,有时一个看似微…

静态通讯录

今天我们分享一下静态通讯录详细解释和代码,之前分享过的只是通讯录的代码,但是我们没有进行讲解和解释,今天我们一边分享它的代码一边解释原因,让大家可以手撕通讯录。现在开始我们的学习吧。 首先我们应该要有三个文件&#xf…

MYSQL8解压版 windows 主从部署步骤及配置(包含配置文件,教程文件,免积分下载)

MYSQL8解压版 windows 主从部署步骤及配置 一.安装MSYQL 这里只讲大概,详细步骤、my.ini文件、安装包等会在页尾文件中(正常情况按首个mysql安装,只是名字有区别) 1.主库my.ini配置 [mysqld] #典型的值是5-6GB(8GB内存),8-11GB(16GB内存), 20-25GB(32GB内存)&…

Ctfshow web入门 XSS篇 web316-web333 详细题解 全

CTFshow XSS web316 是反射型 XSS 法一&#xff1a; 利用现成平台 法二&#xff1a; 自己搭服务器 先在服务器上面放一个接受Cookie的文件。 文件内容&#xff1a; <?php$cookie $_GET[cookie];$time date(Y-m-d h:i:s, time());$log fopen("cookie.txt"…

java实现字典回写

目录 前言 实现 新增注解 新增切面 前言 字典管理是大部分系统都有的一个模块&#xff0c;用来管理业务上的字典数据&#xff0c;通常是树状结构&#xff0c;用键值对进行存储。然后具体业务场景使用字典数据时&#xff0c;业务数据往往存的是字典编码&#xff0c;因此查看…

路由器配置静态和默认路由实现VLAN之间的通信

目录 华为路由器静态路由和默认路由的写法 静态路由和默认路由的区别 案例 华为路由器静态路由和默认路由的写法 配置静态路由&#xff1a; [Huawei] ip route-static <目标网络> <子网掩码> <下一跳地址> 实例&#xff1a;将目标网络192.168.10.0/24的流…

一站式吃鸡利器,提升游戏战斗力,助您稳坐鸡王宝座!

各位吃鸡玩家们&#xff0c;听说过绝地求生作图工具吗&#xff1f;想知道如何提高游戏战斗力、分享顶级作战干货、查询装备皮肤库存&#xff1f;还在为游戏账号安全而担心吗&#xff1f;别急&#xff0c;今天就为您介绍一款一站式吃鸡利器&#xff0c;满足您的所有需求&#xf…

如何快速搭建一个react项目?如何使用react脚手架快速搭建项目?

如何使用react脚手架快速搭建项目&#xff1f; 一、前提 电脑已经安装了node和npm环境。 react文档中要求Node > 8.10 和 npm > 5.6&#xff0c;查看版本&#xff1a;node -v&#xff1b;npm -v&#xff1b; 二、步骤 1、在合适的文件夹中打开命令行窗口cmd 2、全局安…

SkyWalking搭配springboot应用(三)

title: “SkyWalking搭配springboot应用(三)” createTime: 2021-07-13T16:27:5708:00 updateTime: 2021-07-13T16:27:5708:00 slug: “SkyWalking搭配springboot应用(三)” draft: false author: “ggball” tags: [“skywalking”] categories: [“java”] description: “sk…