做爰高潮a片〈毛片〉,尤物av天堂一区二区在线观看,一本久久A久久精品VR综合,添女人荫蒂全部过程av

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

如何恢復(fù)MySQL主從數(shù)據(jù)一致性

來源:懂視網(wǎng) 責編:小采 時間:2020-11-09 20:50:59
文檔

如何恢復(fù)MySQL主從數(shù)據(jù)一致性

如何恢復(fù)MySQL主從數(shù)據(jù)一致性:最近被告知,MySQL主從數(shù)據(jù)庫的數(shù)據(jù)不一致,猜測備庫在同步過程中出現(xiàn)了問題,于是,登上備庫,使用 mysql> show slave status\G查看,果然,備庫在insert語句中因違反主鍵約束,導致備庫停止了同步。現(xiàn)在的問題很明確,就是如何恢復(fù)主從庫數(shù)據(jù)的一致性。
推薦度:
導讀如何恢復(fù)MySQL主從數(shù)據(jù)一致性:最近被告知,MySQL主從數(shù)據(jù)庫的數(shù)據(jù)不一致,猜測備庫在同步過程中出現(xiàn)了問題,于是,登上備庫,使用 mysql> show slave status\G查看,果然,備庫在insert語句中因違反主鍵約束,導致備庫停止了同步。現(xiàn)在的問題很明確,就是如何恢復(fù)主從庫數(shù)據(jù)的一致性。

最近被告知,MySQL主從數(shù)據(jù)庫的數(shù)據(jù)不一致,猜測備庫在同步過程中出現(xiàn)了問題,于是,登上備庫,使用 mysql> show slave status\G查看,果然,備庫在insert語句中因違反主鍵約束,導致備庫停止了同步。現(xiàn)在的問題很明確,就是如何恢復(fù)主從庫數(shù)據(jù)的一致性。

可選方案如下:

一、查看Master最新的Position,將其作為Slave復(fù)制的起點。

這種思路體現(xiàn)的是過去的不一致既往不咎,現(xiàn)在保持同步即可。看起來,這個思路和恢復(fù)主從庫數(shù)據(jù)的一致性的初衷有所違背,但這種方法,簡單,高效,在測試環(huán)境,對歷史數(shù)據(jù)要求不高的場景中可使用。

二、必須嚴格的恢復(fù)主從庫數(shù)據(jù)的一致性。

在這里,也有兩種思路:

1. 備份主庫數(shù)據(jù),并在從庫上恢復(fù),在歷史數(shù)據(jù)一致性的基礎(chǔ)上開啟同步,但這種方法比較麻煩,必須在主庫上執(zhí)行鎖表操作,阻止客戶端對于表數(shù)據(jù)的更新操作,而且在數(shù)據(jù)量大的情況下,備份也是個耗時的工程。其實,這種方法在實際生產(chǎn)環(huán)境中也很少用。

2. Skip掉相關(guān)錯誤

其實,這個說活不是很嚴謹,準備的說,是跳過相關(guān)的事務(wù)。在我今天這種情況下,就是skip掉因違反主鍵約束而失敗的insert語句。

如何跳過相關(guān)事務(wù)

一、停止slave服務(wù)

二、SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;

三、開啟slave服務(wù)。

這里跳過的是一個事務(wù)。當然,也可以跳過多個事務(wù),但要謹慎,畢竟,你并不知道跳過的是什么事務(wù)。

建議:可反復(fù)執(zhí)行上述步驟,仔細查看導致從庫不能同步的語句。有的時候,阻止從庫的事務(wù)太多,這種方法就顯得略為低效。

可分析主庫日志的事務(wù),來確定SQL_SLAVE_SKIP_COUNTER的合適值。具體步驟如下:

1、在備庫中執(zhí)行show slave status\G,確認以下兩個參數(shù)

根據(jù)上述兩個參數(shù)的值,在主庫中查看當前阻礙從庫復(fù)制的事務(wù)以及之后的事務(wù)。

mysql> SHOW BINLOG EVENTS in 'mysql-bin.000217' from 673146776;

這個是查看日志文件mysql-bin.000217中事務(wù)ID為673146776后的所有事務(wù)。

當然,SHOW BINLOG EVENTS的用法還是相當靈活的,下述方式均可。

mysql> SHOW BINLOG EVENTS in 'mysql-bin.000217' from 673146776\G

mysql> SHOW BINLOG EVENTS in 'mysql-bin.000217' from 673146776 limit 10;

也可在主機環(huán)境下通過mysqlbinlog命令查看

代碼如下:# mysqlbinlog mysql-bin.000217 --start-position=673146776

如何查詢語句的執(zhí)行情況

在從庫跳過相關(guān)事務(wù),重新啟動Slave后,Slave_IO_Running,Slave_SQL_Running兩項均顯示“YES”,但Seconds_Behind_Master并沒有馬上下降,反而緩慢上升。

這時候,通過show processlist語句查看線程的執(zhí)行情況,發(fā)現(xiàn)第一條語句執(zhí)行時間太長,“State”列顯示“Sending data”。關(guān)于“Sending data”的含義,官方說明如下:

可見,該語句涉及了大量的磁盤讀。

為了進一步分析該語句的耗時分布,可設(shè)置profiling變量。步驟如下:

一、在查詢開始之前,設(shè)置set profiling=on;

二、在語句執(zhí)行完畢后,通過show profiles查看語句的Query_ID。

三、通過show profile for queryQuery_ID 查看語句的具體執(zhí)行情況。

最后也發(fā)現(xiàn),該語句在Sending data階段耗時過久。

總結(jié):

1. 在執(zhí)行stop slave的時候,stop slave命令被hang住了,在網(wǎng)上查詢了相關(guān)資料,可能與Slave中有長SQL或Locked的SQL執(zhí)行有關(guān),在這里,除show processlist外,最好不要執(zhí)行show slave status以及slave stop等slave相關(guān)命令。那么如何解決該問題呢?等待鎖定SlaveSQL的線程結(jié)束,或者重啟數(shù)據(jù)庫。我選擇了后者。

2. 在重啟備庫的過程中,還有段小插曲,在執(zhí)行start slave命令的時候,報如下錯誤:ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository。網(wǎng)上很多資料都是推薦重新配置主從集群,這樣又回到了開頭的方案選擇部分了。奇怪的時,我關(guān)閉了從庫,重新啟動,又好了。而兩次啟動命令唯一的差別就是前一次啟動使用的是mysqld,后一次啟動使用的是mysqld_safe,而且多帶了一個--user參數(shù)。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

如何恢復(fù)MySQL主從數(shù)據(jù)一致性

如何恢復(fù)MySQL主從數(shù)據(jù)一致性:最近被告知,MySQL主從數(shù)據(jù)庫的數(shù)據(jù)不一致,猜測備庫在同步過程中出現(xiàn)了問題,于是,登上備庫,使用 mysql> show slave status\G查看,果然,備庫在insert語句中因違反主鍵約束,導致備庫停止了同步。現(xiàn)在的問題很明確,就是如何恢復(fù)主從庫數(shù)據(jù)的一致性。
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 比如县| 红桥区| 辽源市| 梨树县| 郎溪县| 平安县| 芒康县| 博爱县| 股票| 朝阳市| 玉龙| 台北市| 奉贤区| 通江县| 蓝田县| 兴义市| 尖扎县| 阜康市| 乐东| 鲁山县| 黄骅市| 乐昌市| 南澳县| 胶南市| 黑水县| 仙居县| 明星| 佛山市| 迭部县| 怀远县| 香格里拉县| 南召县| 郯城县| 惠水县| 长泰县| 南阳市| 平顺县| 临洮县| 江油市| 莱州市| 灵武市|