MySQL5.7.36之主从复制延迟复制-centos7

2024-09-01 03:20

本文主要是介绍MySQL5.7.36之主从复制延迟复制-centos7,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

设置从库sql_thread延时回放,使得从库晚于主库执行

1、开启延迟复制

第一步:关闭sql_thread线程 stop slave sql_thread;
第二步:设置延时时间(单位为秒) change master to master_delay=60;
第三步:启动sql_thread线程 start slave sql_thread;

2、关闭延迟复制

第一步:关闭sql_thread线程 stop slave sql_thread;
第二步:设置延时时间(单位为秒) change master to master_delay=0;
第三步:启动sql_thread线程 start slave sql_thread;

3、作用

用户开发、后台管理员误操作(drop,delete)的恢复

第一步:停止所有从库的sql_thread线程 stop slave sql_thread;
第二步:show slave status \G;查询起点(手工回放relay log)Relay_Log_File: localhost-relay-bin.000025 #回放文件名Relay_Log_Pos: 407 #回放起点位置
第三步:查询回放文件的结束位置(也就是你误操作的前面)show relaylog events in 'localhost-relay-bin.000025';
mysql> show relaylog events in 'localhost-relay-bin.000025';
+----------------------------+-----+----------------+-----------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Log_name                   | Pos | Event_type     | Server_id | End_log_pos | Info                                                                                                                                                                                          |
+----------------------------+-----+----------------+-----------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| localhost-relay-bin.000025 |   4 | Format_desc    |         2 |         123 | Server ver: 5.7.36-log, Binlog ver: 4                                                                                                                                                         |
| localhost-relay-bin.000025 | 123 | Previous_gtids |         2 |         194 | cdb77c1e-5769-11ed-a384-000c29274ab2:1-145                                                                                                                                                    |
| localhost-relay-bin.000025 | 194 | Rotate         |         1 |           0 | mysql-bin.000008;pos=4                                                                                                                                                                        |
| localhost-relay-bin.000025 | 241 | Format_desc    |         1 |         123 | Server ver: 5.7.36-log, Binlog ver: 4                                                                                                                                                         |
| localhost-relay-bin.000025 | 360 | Rotate         |         0 |         407 | mysql-bin.000008;pos=194                                                                                                                                                                      |
| localhost-relay-bin.000025 | 407 | Gtid           |         1 |         259 | SET @@SESSION.GTID_NEXT= 'cdb77c1e-5769-11ed-a384-000c29274ab2:146'                                                                                                                           |
| localhost-relay-bin.000025 | 472 | Query          |         1 |         338 | BEGIN                                                                                                                                                                                         |
| localhost-relay-bin.000025 | 551 | Intvar         |         1 |         370 | INSERT_ID=13                                                                                                                                                                                  |
| localhost-relay-bin.000025 | 583 | Query          |         1 |         621 | use `test`; insert into t1 values (null,'test-13','2022-10-29 23:45:16'),(null,'test-14','2022-10-29 23:45:16'),(null,'test-15','2022-10-29 23:45:16'),(null,'test-16','2022-10-29 23:45:16') |
| localhost-relay-bin.000025 | 834 | Xid            |         1 |         652 | COMMIT /* xid=22 */                                                                                                                                                                           |
| localhost-relay-bin.000025 | 865 | Gtid           |         1 |         717 | SET @@SESSION.GTID_NEXT= 'cdb77c1e-5769-11ed-a384-000c29274ab2:147'                                                                                                                           |
| localhost-relay-bin.000025 | 930 | Query          |         1 |         809 | drop database test                                                                                                                                                                            |
总结出来的结果:换句话说就是当前localhost-relay-bin.000025文件误操作的开始位置是407,结束位置是930;
第四步:截取localhost-relay-bin.000025(relay log)日志文件
mysqlbinlog --skip-gtids --start-position=407 --stop-position=930 /data/mysql/mysql3306/data/localhost-relay-bin.000025 >./2022-10-31relay.sql
第五步:关闭binlog日志 set sql_log_bin=0;
第六步:进入从库增量备份文件到从库中 source /root/2022-10-31relay.sql;
第七步:开启binlog日志 set sql_log_bin=1;
第八步:停止当前服务的从线程 stop slave;
第九步:将主库改成从库就行

这篇关于MySQL5.7.36之主从复制延迟复制-centos7的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1125802

相关文章

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

禁止复制的网页怎么复制

禁止复制的网页怎么复制 文章目录 禁止复制的网页怎么复制前言准备工作操作步骤一、在浏览器菜单中找到“开发者工具”二、点击“检查元素(inspect element)”按钮三、在网页中选取需要的片段,锁定对应的元素四、复制被选中的元素五、粘贴到记事本,以`.html`为后缀命名六、打开`xxx.html`,优雅地复制 前言 在浏览网页的时候,有的网页内容无法复制。比如「360

ActiveMQ—消息特性(延迟和定时消息投递)

ActiveMQ消息特性:延迟和定时消息投递(Delay and Schedule Message Delivery) 转自:http://blog.csdn.net/kimmking/article/details/8443872 有时候我们不希望消息马上被broker投递出去,而是想要消息60秒以后发给消费者,或者我们想让消息没隔一定时间投递一次,一共投递指定的次数。。。 类似

CentOs7上Mysql快速迁移脚本

因公司业务需要,对原来在/usr/local/mysql/data目录下的数据迁移到/data/local/mysql/mysqlData。 原因是系统盘太小,只有20G,几下就快满了。 参考过几篇文章,基于大神们的思路,我封装成了.sh脚本。 步骤如下: 1) 先修改好/etc/my.cnf,        ##[mysqld]       ##datadir=/data/loc

MySQL主从同步延迟原理及解决方案

概述 MySQL的主从同步是一个很成熟的架构,优点为: ①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力; ②在从主服务器进行备份,避免备份期间影响主服务器服务; ③当主服务器出现问题时,可以切换到从服务器。 相信大家对于这些好处已经非常了解了,在项目的部署中也采用这种方案。但是MySQL的主从同步一直有从库延迟的问题,那么为什么会有这种问题。这种问题如何解决呢? MyS

CentOS 7 x64下安装MySql5.7图文详解

参考: https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ http://www.jianshu.com/p/7cccdaa2d177 http://www.linuxidc.com/Linux/2016-09/135288.htm 最近搞了台阿里云服务器,搭载的是CentOS 7系统,这里记录下mysql5.7的安装流程 查

centos7 安装rocketmq4.7.0以及RocketMQ-Console-Ng控制台

一、前置工作 1.1安装jdk8 https://blog.csdn.net/pang_ping/article/details/80570011 1.2安装maven https://www.cnblogs.com/116970u/p/11211963.html 1.3安装git https://blog.csdn.net/xwj1992930/article/details/964

Docker 容器技术:简化 MySQL 主从复制部署与优化

Docker 容器技术:简化 MySQL 主从复制部署与优化 引言 随着大数据和云计算的快速发展,数据库的高可用性、可扩展性和易维护性成为了企业IT架构中的重要考量因素。MySQL 作为一款流行的开源数据库管理系统,其主从复制(Master-Slave Replication)功能为实现数据备份、故障恢复、读取扩展和数据分析提供了强有力的支持。然而,传统的 MySQL 主从复制部署过程复杂且容