0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MySQL实现延时复制

汽车玩家 来源:黑马程序员 作者:黑马程序员 2020-05-05 22:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

公司有一套mysqlAB复制架构的生产库,一主一从的架构, 每周一凌晨0天都自动做全备。

MySQL实现延时复制

一切正常,但今天(假设为周6)不小心误删除了一张表,从库也会跟着做误删除。假设这张表里有好几年的业务数据, 如何恢复呢?

有以下几种思路:

需要把这几年内所有的二进制日志先合并,再通过sed,grep,awk等命令处理把这张表从建表到现在的所有操 作按顺序找出来(当然要除掉你最后误删除的那条),然后导回去(数据量太大就不建议了)

先恢复周一的全备到测试库上,然后再恢复全备到现在的二进制日志(除了误删除的那句),再把那张表导出 来,导回到生产库上

有延时复制的话,在延时库上导出这张表,导回A, 再用二进制日志恢复延时时间内的误删表的操作(除了误删除的那句)

从上面的分析来看,延时复制能够在一定程序上简化恢复的过程。

Maatkit是一个Perl写的Mysql开源管理工具包,里面有一个可以在www.maatkit.org网站上下载软件包。我这里软包为

mk-slave-delay

maatkit-7540.tar.gz

命令可以实现延时复制。

搭建过程

首先需要搭建好mysqlAB复制(传统AB复制,基于GTIDs的AB复制,半同步复制等都可以),然后做以下过程

1, 在需要做延时复制的slave上安装mattkit

(注意: master和正常的slave不用安装)

MySQL实现延时复制

2, 确认整个架构所有机器时间同步

因为延时是要按时间来计算的,所以时间必须要一致, 所有服务器执行下面的命令,并比较时间

MySQL实现延时复制

3, 运行延时复制进程

确认时间一致, 并且AB复制正常的情况下, 在slave上执行下面的命令

MySQL实现延时复制

MySQL实现延时复制

4, 测试

在slave上查看复制状态,会发现SQL线程为NO,这是正常的,因为延时复制里IO线程是实时的,只是把SQL线程延时了

MySQL实现延时复制

然后在master上找一个测试表插入几条数据,等待1分钟后,才会看到数据在salve上复制成功。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • MySQL
    +关注

    关注

    1

    文章

    938

    浏览量

    29853
  • 线程
    +关注

    关注

    0

    文章

    511

    浏览量

    20887
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NineData 2026年3月功能上新:支持飞书外部审批,增强慢查询分析与数据复制能力

    RDS MySQL、阿里云 RDS PostgreSQL 及 SQL Server,数据归档与清理覆盖 SQL Server;同时增强大规格数据复制性能、复杂对象兼容性和链路稳定性,进一步提升企业 SQL 变更、性能排查与迁移同步效率。
    的头像 发表于 04-10 11:40 397次阅读
    NineData 2026年3月功能上新:支持飞书外部审批,增强慢查询分析与数据<b class='flag-5'>复制</b>能力

    MySQL 到 SelectDB 实时同步:传统 ETL 与 NineData 的能力侧重

    一条成熟的 MySQL -> SelectDB 链路,不只是“数据复制问题”,也是“目标端建模问题”。NineData 并不会替代目标端建模,它把团队的注意力从“同步链路本身是否可靠”逐步转移到“SelectDB 目标表该怎么设计更合理”上。对项目推进来说,这也是一种很实
    的头像 发表于 03-31 15:53 711次阅读
    <b class='flag-5'>MySQL</b> 到 SelectDB 实时同步:传统 ETL 与 NineData 的能力侧重

    从业务库到实时分析库,NineData 构建 MySQL到SelectDB 同步链路

    MySQL 到 SelectDB,难点从来不是“把数据搬过去”,而是把这件事做成一条真正可靠的生产链路。 NineData 在这个场景里的价值,不只是提供了一条复制通道,而是把任务创建、实时复制
    的头像 发表于 03-31 12:54 588次阅读
    从业务库到实时分析库,NineData 构建 <b class='flag-5'>MySQL</b>到SelectDB 同步链路

    NineData 新增支持 MySQL 到 openGauss PostgreSQL 数据复制链路

    MySQL 到 openGauss PostgreSQL 兼容版的迁移,真正难的从来不是“把数据搬过去”,而是如何在业务不停、数据持续变化、结果需要验证、问题需要及时发现的前提下,把整个迁移过程稳稳
    的头像 发表于 03-19 11:44 247次阅读
    NineData 新增支持 <b class='flag-5'>MySQL</b> 到 openGauss PostgreSQL 数据<b class='flag-5'>复制</b>链路

    恒讯科技解析:如何安装MySQL并创建数据库

    安装和管理MySQL不必复杂。只需几分钟,你就能在Linux服务器上搭建MySQL,创建第一个数据库,甚至自动化备份——同时确保数据安全有序。 什么是 MySQL  MySQL 是一个
    的头像 发表于 01-14 14:25 478次阅读

    如何在Zephyr RTOS中实现延时和计时函数

    多种延时与计时实现方案,满足不同应用场景的需求。那么,大家平时都是怎么在MCU程序中实现计时函数、实现延时的呢?
    的头像 发表于 12-26 10:32 6366次阅读
    如何在Zephyr RTOS中<b class='flag-5'>实现</b><b class='flag-5'>延时</b>和计时函数

    交流延时电源

    交流延时电源
    的头像 发表于 12-25 12:57 619次阅读
    交流<b class='flag-5'>延时</b>电源

    工业数据中台支持接入MySQL数据库吗

    工业数据中台完全支持接入MySQL数据库 ,且通过数据同步、集成与治理等技术手段,能够充分发挥MySQL在数据存储与事务处理方面的优势,同时弥补其在数据分析与共享能力上的不足,具体分析如下: 技术
    的头像 发表于 12-04 11:23 568次阅读
    工业数据中台支持接入<b class='flag-5'>MySQL</b>数据库吗

    CentOS 7下MySQL 8双主热备高可用架构全解

    MySQL主节点2 核心逻辑: 通过Keepalived实现VIP漂移 双向GTID同步保证数据一致性 双写模式需配合应用层冲突解决机制 MySQL 8部署流程 ▶ 步骤1:官方源配置 wget
    的头像 发表于 08-12 17:08 1060次阅读

    MySQL 8.0性能优化实战指南

    作为一名运维工程师,MySQL数据库优化是我们日常工作中最具挑战性的任务之一。MySQL 8.0作为当前主流版本,在性能、安全性和功能上都有了显著提升,但如何充分发挥其潜力,仍需要我们掌握正确的优化策略。
    的头像 发表于 07-24 11:48 1210次阅读

    MySQL数据备份与恢复策略

    数据是企业的核心资产,MySQL作为主流的关系型数据库管理系统,其数据的安全性和可靠性至关重要。本文将深入探讨MySQL的数据备份策略、常用备份工具以及数据恢复的最佳实践,帮助运维工程师构建完善的数据保护体系。
    的头像 发表于 07-14 11:11 972次阅读

    企业级MySQL数据库管理指南

    在当今数字化时代,MySQL作为全球最受欢迎的开源关系型数据库,承载着企业核心业务数据的存储与处理。作为数据库管理员(DBA),掌握MySQL的企业级部署、优化、维护技能至关重要。本文将从实战角度出发,系统阐述MySQL在企业环
    的头像 发表于 07-09 09:50 984次阅读

    应用中的“复制功能”如何实现##HarmonyOS应用开发##

    ​很多应用都有一个“点击复制”的功能,这一功能在实际操作中非常便捷,这一功能的实现主要是通过Basic Services Kit(基础服务)中的“剪贴板服务”实现的。 代码如下: async
    发表于 06-30 17:27

    介绍三种常见的MySQL高可用方案

    在生产环境中,为了确保数据库系统的连续可用性、降低故障恢复时间以及实现业务的无缝切换,高可用(High Availability, HA)方案至关重要。本文将详细介绍三种常见的 MySQL 高可用
    的头像 发表于 05-28 17:16 1522次阅读

    MYSQL集群高可用和数据监控平台实现方案

    该项目共分为2个子项目,由MYSQL集群高可用和数据监控平台两部分组成。
    的头像 发表于 05-28 10:10 1516次阅读
    <b class='flag-5'>MYSQL</b>集群高可用和数据监控平台<b class='flag-5'>实现</b>方案