溫馨提示×

溫馨提示×

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

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

MySQL5.7怎么用mysqldump搭建gtid主從

發(fā)布時間:2021-08-21 11:18:10 來源:億速云 閱讀:328 作者:chen 欄目:MySQL數(shù)據(jù)庫

這篇文章主要介紹“MySQL5.7怎么用mysqldump搭建gtid主從”,在日常操作中,相信很多人在MySQL5.7怎么用mysqldump搭建gtid主從問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MySQL5.7怎么用mysqldump搭建gtid主從”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!


最近需要把一個老系統(tǒng)升級到新系統(tǒng),主要是硬件更新。

在新硬件這邊搭建了一主兩從的環(huán)境,數(shù)據(jù)主要是開發(fā)人員導(dǎo)入到新系統(tǒng),因為導(dǎo)入數(shù)據(jù)過程中并發(fā)量太大,寫入太密集,需要先把從停掉,數(shù)據(jù)導(dǎo)入、核對完成后,重新搭建主從環(huán)境。

主從是環(huán)境的mysql是5.7.12,用了gtid。

下面是具體步驟,沒有特殊說明的都是在從庫執(zhí)行:

1.stop slave; ##停止從庫

2.reset slave all;     ##重置主從配置信息

3.在主庫上使用mysqldump導(dǎo)出數(shù)據(jù)庫,我寫了一個腳本來執(zhí)行導(dǎo)出,腳本名字是mysqlbackup.sh


  1. [root@iz2ze6jo3o3bqbcongnypqz export_mysql]# more mysqlbackup.sh


  2. #!/bin/bash


  3. databases=('xxx_0042')


  4. basepath='/alidata1/backup/export_mysql/'

  5. user='root'

  6. passwd='xxxxxx'


  7. if [ ! -d "$basepath" ]; then

  8.   mkdir -p "$basepath"

  9. fi


  10. for db in ${databases[*]}

  11.   do

  12.     /bin/nice -n 19 /usr/bin/mysqldump -u$user -p$passwd --log-error=$basepath$db-$(date +%Y%m%d).log --set-gtid-purged=on --single-transaction --databases $db > $basepath$db-$(date +%Y%m%d).sql

  13.     

  14.     /bin/nice -n 19 tar zPcf $basepath$db-$(date +%Y%m%d).sql.tar.gz $basepath$db-$(date +%Y%m%d).sql

  15.     

  16.     find $basepath -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} \;

  17.   done


  18.   rm -rf $basepath


4.導(dǎo)出的文件中已經(jīng)包含了GTID_PURGED的信息,這個信息非常有用,意思是從庫開啟后那些事物不需要執(zhí)行了。

  1. [root@iz2ze6jo3o3bqbcongnypoz export_mysql]# grep GTID_PURGED xxx_0042-20171202.sql

  2. SET @@GLOBAL.GTID_PURGED='c9c73c70-c089-11e7-8544-00163e0ad76e:1-49794683';

5.將備份文件轉(zhuǎn)到從服務(wù)器,我這個比較復(fù)雜,先把文件轉(zhuǎn)到跳板機,然后轉(zhuǎn)到從,-i 參數(shù)是為了用阿里云的密鑰文件,ssh也是這樣用。

  1. scp -i xx_aliyun.pem root@192.168.2.71:/alidata1/backup/export_mysql/xxx_0042-20171202.sql.tar.gz /home/guoliang/


  2. scp -i xx_aliyun.pem /home/guoliang/xxx_0042-20171202.sql.tar.gz  root@192.168.2.72:/alidata1/backup/export_mysql


  3. scp -i xx_aliyun.pem /home/guoliang/xxx_0042-20171202.sql.tar.gz  root@192.168.2.73:/alidata1/backup/export_mysql


6.reset master;  ##重置從服務(wù)器上的binlog


7.導(dǎo)入數(shù)據(jù)

  1. source /alidata1/backup/export_mysql/alidata1/backup/export_mysql/xxx_0042-20171202.sql


8.執(zhí)行change master

  1. change master to

  2. master_host='192.168.2.71',

  3. master_port=3306,

  4. master_user='repl',

  5. master_password='REPLsafxxxxx',

  6. MASTER_AUTO_POSITION = 1;

9.show slave status \G;  ##檢查從的狀態(tài),主要關(guān)注下面這兩個值是否和上面grep出來的值是否一致。

  1.   Retrieved_Gtid_Set: c9c73c70-c089-11e7-8544-00163e0ad76e:49794684-50352676
               

  2. Executed_Gtid_Set: c9c73c70-c089-11e7-8544-00163e0ad76e:1-49798235


10.當(dāng)Seconds_Behind_Master: 0的時候,數(shù)據(jù)同步已經(jīng)完成了。

到此,關(guān)于“MySQL5.7怎么用mysqldump搭建gtid主從”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

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

免責(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)容。

AI