您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)MySQL中部署延遲從庫的好處有哪些,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
MySQL延遲從庫的好處主要有幾點:
1、誤刪除時,能更快恢復(fù)數(shù)據(jù)。
有時候手抖了,把線上數(shù)據(jù)給誤刪除了,或者誤刪除庫、表、其他對象,或不加WHERE條件的更新、刪除,都可以讓延遲從庫在誤操作前的時間點停下,然后進(jìn)行恢復(fù)。
2、把延遲從庫作為專用的備份節(jié)點。雖然有一定的延遲,但并不影響利用該節(jié)點作為備份角色,也不影響生產(chǎn)節(jié)點數(shù)據(jù)庫庫。
3、還可以把延遲從庫當(dāng)做一些問題、案例研究的對象。個別時候,可能有些binlog event在普通從庫上會有問題(例如早期版本中無主鍵會導(dǎo)致從庫更新非常慢的經(jīng)典問題),這時就有時間在延遲從庫上慢慢琢磨研究了。
啟用延遲從庫的方法也挺簡單的,下面是在MySQL 8.0的做法:
#直接用 CHANGE MASTER TO 設(shè)置,后面的N單位是秒數(shù) CHANGE MASTER TO MASTER_DELAY = N
當(dāng)發(fā)生誤操作需要讓延遲從庫在某個位置上停下來時,用下面的命令:
START SLAVE UNTIL { #1、直到指定的GTID位置停下 {SQL_BEFORE_GTIDS | SQL_AFTER_GTIDS} = gtid_set #2、直到指定的binlog位置停下 | MASTER_LOG_FILE = ‘log_name', MASTER_LOG_POS = log_pos #3、直到指定的relay log位置停下 | RELAY_LOG_FILE = ‘log_name', RELAY_LOG_POS = log_pos #4、直到slave上多個并行線程之前沒有延遲差距了就停下 #因為多線程復(fù)制,不同線程的復(fù)制進(jìn)度不一樣,因此有差距 | SQL_AFTER_MTS_GAPS }
P.S,從5.7起,修改 MASTER_DELAY 選項可以在線立即生效,而無需重啟 slave 線程。
至于具體 MASTER_DELAY 設(shè)置多少合適,要估算如果發(fā)生誤操作時,DBA平均能到現(xiàn)場的時間,一般建議1小時左右。
上述就是小編為大家分享的MySQL中部署延遲從庫的好處有哪些了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。