mysql 案例 ~ pt修復工具的使用

簡介:今天咱們來聊聊PT修復工具pt-table-sync

注意事項:
? ?1 表要有主鍵或者唯一鍵
? ?2 針對每一個chunk加的是for update鎖
? ?3 修復過程中不能容忍從庫延遲 如果從庫延遲太多,pt-table-sync會長期持有對chunk的for update鎖,然后等待從庫的master_pos_wait執行完畢或超時。從庫延遲越大,等待過程就越長,主庫加鎖的時間就越長,對線上影響就越大
? ?4 有觸發器和主外鍵約束的情況下要慎用
? ?5 主從數據不一致需要通過replace into來修復,在主庫應用生成binlog,并會應用到所有從庫
? ?6 根據pt-table-checksum的表信息修復的,所以要先校驗后修復
? ?7 pt-table-sync不會同步表結構、索引等,只同步不一致的數據
用戶權限
? ?GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP,SUPER ON db.* TO 'god'@'%' IDENTIFIED BY 'god'//修復的庫
相關參數
? ?–sync-to-master 指定一個DSN,即從的IP,他會通過show processlist或show slave status 去自動的找主。
? ?--unique-checks 唯一鍵檢測
? ?--print 進行打印語句
? ?--execute 真正執行
常用命令范式
? ?pt-table-sync --replicate test.checksums --sync-to-master --unique-checks h=從IP,P=3306,u=god,p=god --print 打印
? ?pt-table-sync --replicate test.checksums --sync-to-master --unique-checks h=從IP,P=3306,u=god,p=god --execute 執行
解決思路
? 1 先用pt-table-checksum校驗一遍,確定不一致的程度:如果不同步的很少,用pt-table-sync直接修復;否則,用備份先替換它,然后用pt-table-sync修復
? 2 在用rsync工具修復的時候最好先print再execute或者手工對從庫執行sql即可
補充
? 針對主從同步發生一些錯誤的場景
? 1 pt-table-checksum 針對發生的表進行校驗,最好采用DSNS
? 2 pt-table-sync 根據第一步的信息進行修改,然后執行sql

轉載于:https://www.cnblogs.com/danhuangpai/p/9178517.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/254356.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254356.shtml
英文地址,請注明出處:http://en.pswp.cn/news/254356.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

mpeg2,mpeg4,h264編碼標準的異同

1、宏塊匹配像素精度: MPEG2中,運動估計的精度是1/2的像素,通過線性插值實現(可能有簡單修正); H264和MPEG4 都可以支持1/4像素的精度 2、參考幀的數量:MPEG2,MPEG4的P幀只能有一幀…

四十歲學編程(一)

有時想想,人生還真的是曲折,人到中年了,我才開始學編程。 這一學,就是三年多,我居然堅持了下來。 更沒想到的是,三年后的我居然有勇氣投簡歷求職前端,雖然面試前戰戰兢兢。 很多時候&#xff0c…

01_SQlite數據庫簡介

轉載于:https://www.cnblogs.com/ZHONGZHENHUA/p/7023014.html

GNU Make 使用手冊(中譯版)

翻譯:于鳳昌譯者注:本人在閱讀Linux源代碼過程中發現如果要全面了解Linux的結構、理解Linux的編程總體設計及思想必須首先全部讀通Linux源代碼中各級的Makefile文件。目前,在網上雖然有一些著作,但都不能全面的解釋Linux源代碼中各…

基礎10 多進程、協程(multiprocessing、greenlet、gevent、gevent.monkey、select、selector)...

1.多進程實現方式(類似于多線程) 1 import multiprocessing2 import time,threading3 4 def thread_run():#定義一個線程函數5 print("我是子線程%s" %threading.get_ident()) #threading.get_ident()函數獲取當前線程的id6 def run(name…

C#比較運算符及解析

文章目錄博主寫作不容易,孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 比較運算符得出的結果是邏輯型(bool),即 True 或 False 。 比較運算符又稱關系運算符,我們可以把它理解為一種判斷,判斷的結果…

開發人員MySQL調優-理論篇

2019獨角獸企業重金招聘Python工程師標準>>> 修改字符集 查看字符集 show variables like character% show variables like %char% 上面的兩個命令都可以,我一般使用的下面的,會出來如下幾個字符集設定的選項: character_set_clie…

Java基礎之反射機制

Java反射機制 反射機制是什么 反射機制是在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法和屬性;這種動態獲取的信息以及動態調用對象的方法的功能稱為ja…

C#邏輯運算符及解析

文章目錄博主寫作不容易,孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 邏輯運算符用于連接一個或多個條件,判斷這些條件是否成立。 C#的邏輯運算符可以分為兩類: “&” “|” “&…

通過ProGet搭建一個內部的Nuget服務器

.NET Core項目完全使用Nuget 管理組件之間的依賴關系,Nuget已經成為.NET 生態系統中不可或缺的一個組件,從項目角度,將項目中各種組件的引用統統交給NuGet,添加組件/刪除組件/以及更新組件即可一鍵完成,大大提升工作效…

unity官方教程-TANKS(一)

unity官方教程TANKS,難度系數中階。跟著官方教程學習Unity,通過本教程你可以學會使用Unity開發游戲的基本流程。 一、環境 Unity 版本 > 5.2Asset Store 里面搜索 Tanks!Tutorial ,下載導入 二、項目設置 為了便于開發,很多時候我們選用的…

Play框架的用戶驗證。

最近剛剛參與一個基于Play框架的管理平臺的升級工作,其中涉及到了用戶的驗證工作。第一次接觸play框架,直接看已有代碼,有點暈。因此,自己實現了一個簡單的用戶驗證功能。 首先,新建一個User類,包含兩個屬性…

C#條件運算符if-else的簡化格式

文章目錄博主寫作不容易,孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 條件運算符(?:)是if……else的簡化形式 其使用格式為&#xff1a…

碼率控制方式選擇

同碼率下的圖像質量或同圖像質量下的碼率。 AVCodecContext /** * the average bitrate * - encoding: Set by user; unused for constant quantizer encoding. * - decoding: Set by libavcodec. 0 or some bitrate if this info is available in the strea…

Fortran執行語句中的“雙冒號” ::

雙冒號“::”,通常出現于Fortran在變量聲明中,但是在特殊情況下,也會出現于數組中。例如: ... real,target,dimension(10):: a real,pointer,dimension(:):: pa,pb integer:: n3 ... pa > a(n::1) pb > a(n:10:1) ... 咋一看…

VS配置本地IIS以域名訪問

1.IIS下配置自己的網站,添加主機名 2.修改hosts文件(C://Windows/System32/drivers/etc) 3.VS中配置項目Web服務器(選擇外部主機) 轉載于:https://www.cnblogs.com/zuimeideshi520/p/7028544.html

try、catch、finally 和 throw-C#異常處理

文章目錄博主寫作不容易,孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 異常是在程序執行期間出現的問題。C# 中的異常是對程序運行時出現的特殊情況的一種響應,比如嘗試除以零。 異常提供了一種把程序控制權從某個部分轉移到另一個部分的方式。…

Spark RDD/Core 編程 API入門系列 之rdd實戰(rdd基本操作實戰及transformation和action流程圖)(源碼)(三)...

本博文的主要內容是: 1、rdd基本操作實戰 2、transformation和action流程圖 3、典型的transformation和action RDD有3種操作: 1、 Trandformation 對數據狀態的轉換,即所謂算子的轉換 2、 Action 觸發作業,即所謂得結果…

用GDB調試程序

GDB概述GDB 是GNU開源組織發布的一個強大的UNIX下的程序調試工具。或許,各位比較喜歡那種圖形界面方式的,像VC、BCB等IDE的調試,但如果你是在 UNIX平臺下做軟件,你會發現GDB這個調試工具有比VC、BCB的圖形化調試器更強大的功能。所…