溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么切換MySQL主從

發(fā)布時(shí)間:2021-08-30 22:13:18 來源:億速云 閱讀:173 作者:chen 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容介紹了“怎么切換MySQL主從”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

一、在主庫上把熱數(shù)據(jù)立刻dump到本地磁盤ib_buffer_pool文件中
1)在主庫上,執(zhí)行如下命令把innodb buffer pool里面100%的熱數(shù)據(jù)dump到磁盤文件/data/ib_buffer_pool里面:
mysql>SET GLOBAL innodb_buffer_pool_dump_pct=100;

2)在主庫上,執(zhí)行如下命令把innodb buffer pool里面100%的熱數(shù)據(jù)dump到磁盤文件/data/ib_buffer_pool里面:
mysql> SET GLOBAL innodb_buffer_pool_dump_now=ON;

3)在主庫上,執(zhí)行如下命令顯示dump的進(jìn)度,直至看到completed完成字樣為止:
mysql>SHOW STATUS LIKE 'Innodb_buffer_pool_dump_status';

4)把主庫/data/ib_buffer_pool磁盤文件拷貝到從庫的/data目錄下:

5)在從庫上,執(zhí)行如下命令,把/data/ib_buffer_pool里面的熱數(shù)據(jù)加載到innodb buffer pool
mysql>SET GLOBAL innodb_buffer_pool_load_now=ON;

6) 在從庫上,執(zhí)行如下命令顯示load的進(jìn)度
mysql>SHOW STATUS LIKE 'Innodb_buffer_pool_load_status';

7)在從庫上,執(zhí)行如下命令,看從庫的LRU LIST里面有多少個(gè)頁了:
mysql> select count(*) from information_schema.INNODB_BUFFER_PAGE_LRU ;

8) 當(dāng)看到從庫的load進(jìn)度顯示完成字樣時(shí),說明熱數(shù)據(jù)在從庫上加載完畢
mysql>SHOW STATUS LIKE 'Innodb_buffer_pool_load_status';

二、強(qiáng)制把主庫臟數(shù)據(jù)刷新到硬盤

mysql> flush tables;

mysql>set global innodb_max_dirty_pages_pct=0 //表示BP里面的臟數(shù)據(jù)保留0%,即表示臟數(shù)據(jù)全部刷盤

mysql>show global status like '%dirty%';

mysql>show engine innodb status \G; //一般,并不需要等到最后檢查點(diǎn)和當(dāng)前LSN相等才關(guān)閉,兩者只要相差不多(<1000)關(guān)閉起來就很快了。 
Log sequence number 5076573373355
Log flushed up to 5076573331762
Pages flushed up to 5075653942668
Last checkpoint at 5075646303916


三、主從手工切換

1)在從庫上看從庫和主庫是否有同步延時(shí)

mysql>show slave status \G    //在從庫執(zhí)行,看sencond_behind_master是否為0;

2)把從庫mysql只讀去掉

3)先把主庫關(guān)閉,并等待從庫應(yīng)用完relay log
mysql> show master status ; //在從庫執(zhí)行,binlog pos不再變化為止,并記錄下此pos值

4)登錄主庫,并釋放掉vip

ifconfig eth2:1 down (釋放掉vip 172.16.x.x)

5) 把vip綁定到從庫上
ifconfig eth2:1 172.16.x.x/24

arping -I eth2:1 -c 1 -s 172.16.x.x 172.16.x.254

到其他網(wǎng)段的機(jī)器ping 172.16.x.x是通的

在從庫show processlist看是否有連接進(jìn)來,測試業(yè)務(wù)是否正常

這樣,就完成了手工主從切換數(shù)據(jù)庫。切換后,從庫的運(yùn)行性能和主庫一樣,對業(yè)務(wù)影響非常小。

6)重新建立主從復(fù)制關(guān)系

CHANGE MASTER TO MASTER_HOST = 'x.x.x.', MASTER_USER = 'repl', MASTER_PASSWORD = 'xxxx', MASTER_PORT = 3306,MASTER_LOG_FILE='binglog.001145', MASTER_LOG_POS=39951979,

“怎么切換MySQL主從”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI