0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MySQL實現(xiàn)延時復制

汽車玩家 ? 來源:黑馬程序員 ? 作者:黑馬程序員 ? 2020-05-05 22:20 ? 次閱讀

公司有一套mysqlAB復制架構的生產庫,一主一從的架構, 每周一凌晨0天都自動做全備。

MySQL實現(xiàn)延時復制

一切正常,但今天(假設為周6)不小心誤刪除了一張表,從庫也會跟著做誤刪除。假設這張表里有好幾年的業(yè)務數(shù)據(jù), 如何恢復呢?

有以下幾種思路:

需要把這幾年內所有的二進制日志先合并,再通過sed,grep,awk等命令處理把這張表從建表到現(xiàn)在的所有操 作按順序找出來(當然要除掉你最后誤刪除的那條),然后導回去(數(shù)據(jù)量太大就不建議了)

先恢復周一的全備到測試庫上,然后再恢復全備到現(xiàn)在的二進制日志(除了誤刪除的那句),再把那張表導出 來,導回到生產庫上

有延時復制的話,在延時庫上導出這張表,導回A, 再用二進制日志恢復延時時間內的誤刪表的操作(除了誤刪除的那句)

從上面的分析來看,延時復制能夠在一定程序上簡化恢復的過程。

Maatkit是一個Perl寫的Mysql開源管理工具包,里面有一個可以在www.maatkit.org網站上下載軟件包。我這里軟包為

mk-slave-delay

maatkit-7540.tar.gz

命令可以實現(xiàn)延時復制。

搭建過程

首先需要搭建好mysqlAB復制(傳統(tǒng)AB復制,基于GTIDs的AB復制,半同步復制等都可以),然后做以下過程

1, 在需要做延時復制的slave上安裝mattkit

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

MySQL實現(xiàn)延時復制

2, 確認整個架構所有機器時間同步

因為延時是要按時間來計算的,所以時間必須要一致, 所有服務器執(zhí)行下面的命令,并比較時間

MySQL實現(xiàn)延時復制

3, 運行延時復制進程

確認時間一致, 并且AB復制正常的情況下, 在slave上執(zhí)行下面的命令

MySQL實現(xiàn)延時復制

MySQL實現(xiàn)延時復制

4, 測試

在slave上查看復制狀態(tài),會發(fā)現(xiàn)SQL線程為NO,這是正常的,因為延時復制里IO線程是實時的,只是把SQL線程延時了

MySQL實現(xiàn)延時復制

然后在master上找一個測試表插入幾條數(shù)據(jù),等待1分鐘后,才會看到數(shù)據(jù)在salve上復制成功。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • MySQL
    +關注

    關注

    1

    文章

    797

    瀏覽量

    26399
  • 線程
    +關注

    關注

    0

    文章

    503

    瀏覽量

    19636
收藏 人收藏

    評論

    相關推薦

    分布式服務高可用實現(xiàn)復制

    作者:京東保險 王奕龍 1. 為什么需要復制 我們可以考慮如下問題: 當數(shù)據(jù)量、讀取或寫入負載已經超過了當前服務器的處理能力,如何實現(xiàn)負載均衡? 希望在單臺服務器出現(xiàn)故障時仍能繼續(xù)工作,這該如何實現(xiàn)
    的頭像 發(fā)表于 10-29 11:27 ?522次閱讀
    分布式服務高可用<b class='flag-5'>實現(xiàn)</b>:<b class='flag-5'>復制</b>

    配置MySQL主從復制和讀寫分離

    配置MySQL主從復制和讀寫分離
    的頭像 發(fā)表于 10-23 11:44 ?251次閱讀
    配置<b class='flag-5'>MySQL</b>主從<b class='flag-5'>復制</b>和讀寫分離

    如何實現(xiàn)Python復制文件操作

    Python 中有許多“開蓋即食”的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在這篇文章中,你將會看到一些用 Python 實現(xiàn)文件復制的特殊方法。下面我們開始學習這九種不同的方法來實現(xiàn)
    的頭像 發(fā)表于 07-18 14:53 ?341次閱讀

    MySQL的整體邏輯架構

    支持多種存儲引擎是眾所周知的MySQL特性,也是MySQL架構的關鍵優(yōu)勢之一。如果能夠理解MySQL Server與存儲引擎之間是怎樣通過API交互的,將大大有利于理解MySQL的核心
    的頭像 發(fā)表于 04-30 11:14 ?414次閱讀
    <b class='flag-5'>MySQL</b>的整體邏輯架構

    mysql密碼忘了怎么重置

    mysql密碼忘了怎么重置? MySQL是一種開源的關系型數(shù)據(jù)庫管理系統(tǒng),密碼用于保護數(shù)據(jù)庫的安全性和保密性。如果你忘記了MySQL的密碼,可以通過以下幾種方法進行重置。 方法一:使用MySQ
    的頭像 發(fā)表于 12-27 16:51 ?5993次閱讀

    mysql備份還原哪些方法

    MySQL是一個開源的關系型數(shù)據(jù)庫管理系統(tǒng),備份和還原是保證數(shù)據(jù)安全性和可恢復性的重要措施。本文將詳細介紹MySQL備份和還原的方法,包括物理備份和邏輯備份等多種方式,以及每種方式的實現(xiàn)步驟
    的頭像 發(fā)表于 11-23 14:35 ?953次閱讀

    mysql和sql server區(qū)別

    MySQL和SQL Server是兩種常見的關系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),用于存儲和管理數(shù)據(jù)庫。雖然它們都支持SQL語言,但在其他方面存在一些顯著的區(qū)別。以下是MySQL和SQL Server
    的頭像 發(fā)表于 11-21 11:07 ?1452次閱讀

    MySQL導出的步驟

    MySQL是一種常用的關系型數(shù)據(jù)庫管理系統(tǒng),用于存儲和管理大量的結構化數(shù)據(jù)。在實際應用中,我們經常需要將MySQL數(shù)據(jù)庫中的數(shù)據(jù)導出到其他地方,如備份數(shù)據(jù)、數(shù)據(jù)遷移、數(shù)據(jù)分析等。下面是使用MySQL
    的頭像 發(fā)表于 11-21 10:58 ?739次閱讀

    mysql主從復制數(shù)據(jù)不一致怎么辦

    MySQL主從復制是一種常用的數(shù)據(jù)復制技術,用于實現(xiàn)數(shù)據(jù)的實時同步和分布式部署。然而,在實際應用中,主從復制過程中出現(xiàn)數(shù)據(jù)不一致的情況也是很
    的頭像 發(fā)表于 11-16 14:35 ?2212次閱讀

    mysql主從復制 混合類型的復制

    MySQL主從復制是一種常用的數(shù)據(jù)復制技術,可以實現(xiàn)數(shù)據(jù)從一個MySQL服務器(主服務器)復制
    的頭像 發(fā)表于 11-16 14:20 ?518次閱讀

    mysql主從復制的原理

    MySQL主從復制是一種數(shù)據(jù)庫復制技術,它允許將一個MySQL數(shù)據(jù)庫的更新操作自動復制到其他MySQL
    的頭像 發(fā)表于 11-16 14:18 ?454次閱讀

    mysql主從復制主要有幾種模式

    MySQL主從復制MySQL數(shù)據(jù)庫中常用的一種數(shù)據(jù)復制方式,用于實現(xiàn)數(shù)據(jù)的備份、負載均衡、故障恢復等目的。主從
    的頭像 發(fā)表于 11-16 14:15 ?1124次閱讀

    mysql如何實現(xiàn)主從復制的具體流程

    主從復制MySQL數(shù)據(jù)庫中常用的數(shù)據(jù)復制技術之一,它的主要目的是將一個數(shù)據(jù)庫服務器上的數(shù)據(jù)復制到其他服務器上,以實現(xiàn)數(shù)據(jù)的備份、高可用和分
    的頭像 發(fā)表于 11-16 14:10 ?735次閱讀

    mysql主從復制三種模式

    MySQL主從復制是一種常見的數(shù)據(jù)同步方式,它可以實現(xiàn)將一個數(shù)據(jù)庫的更改同步到其他多個數(shù)據(jù)庫的功能。主從復制可以提高數(shù)據(jù)庫的可用性和性能,以及提供故障恢復和數(shù)據(jù)備份的支持。在
    的頭像 發(fā)表于 11-16 14:04 ?1407次閱讀

    MYSQL事務的底層原理詳解

    在事務的實現(xiàn)機制上,MySQL 采用的是 WAL:Write-ahead logging,預寫式日志,機制來實現(xiàn)的。
    的頭像 發(fā)表于 11-15 10:10 ?538次閱讀
    <b class='flag-5'>MYSQL</b>事務的底層原理詳解