您好,登錄后才能下訂單哦!
這篇文章主要介紹“MySQL5.7怎么用mysqldump搭建gtid主從”,在日常操作中,相信很多人在MySQL5.7怎么用mysqldump搭建gtid主從問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MySQL5.7怎么用mysqldump搭建gtid主從”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
最近需要把一個老系統升級到新系統,主要是硬件更新。
在新硬件這邊搭建了一主兩從的環境,數據主要是開發人員導入到新系統,因為導入數據過程中并發量太大,寫入太密集,需要先把從停掉,數據導入、核對完成后,重新搭建主從環境。
主從是環境的mysql是5.7.12,用了gtid。
下面是具體步驟,沒有特殊說明的都是在從庫執行:
1.stop slave; ##停止從庫
2.reset slave all; ##重置主從配置信息
3.在主庫上使用mysqldump導出數據庫,我寫了一個腳本來執行導出,腳本名字是mysqlbackup.sh
[root@iz2ze6jo3o3bqbcongnypqz export_mysql]# more mysqlbackup.sh
#!/bin/bash
databases=('xxx_0042')
basepath='/alidata1/backup/export_mysql/'
user='root'
passwd='xxxxxx'
if [ ! -d "$basepath" ]; then
mkdir -p "$basepath"
fi
for db in ${databases[*]}
do
/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
/bin/nice -n 19 tar zPcf $basepath$db-$(date +%Y%m%d).sql.tar.gz $basepath$db-$(date +%Y%m%d).sql
find $basepath -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} \;
done
rm -rf $basepath
4.導出的文件中已經包含了GTID_PURGED的信息,這個信息非常有用,意思是從庫開啟后那些事物不需要執行了。
[root@iz2ze6jo3o3bqbcongnypoz export_mysql]# grep GTID_PURGED xxx_0042-20171202.sql
SET @@GLOBAL.GTID_PURGED='c9c73c70-c089-11e7-8544-00163e0ad76e:1-49794683';
5.將備份文件轉到從服務器,我這個比較復雜,先把文件轉到跳板機,然后轉到從,-i 參數是為了用阿里云的密鑰文件,ssh也是這樣用。
scp -i xx_aliyun.pem root@192.168.2.71:/alidata1/backup/export_mysql/xxx_0042-20171202.sql.tar.gz /home/guoliang/
scp -i xx_aliyun.pem /home/guoliang/xxx_0042-20171202.sql.tar.gz root@192.168.2.72:/alidata1/backup/export_mysql
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; ##重置從服務器上的binlog
7.導入數據
source /alidata1/backup/export_mysql/alidata1/backup/export_mysql/xxx_0042-20171202.sql
8.執行change master
change master to
master_host='192.168.2.71',
master_port=3306,
master_user='repl',
master_password='REPLsafxxxxx',
MASTER_AUTO_POSITION = 1;
9.show slave status \G; ##檢查從的狀態,主要關注下面這兩個值是否和上面grep出來的值是否一致。
Retrieved_Gtid_Set: c9c73c70-c089-11e7-8544-00163e0ad76e:49794684-50352676
Executed_Gtid_Set: c9c73c70-c089-11e7-8544-00163e0ad76e:1-49798235
10.當Seconds_Behind_Master: 0的時候,數據同步已經完成了。
到此,關于“MySQL5.7怎么用mysqldump搭建gtid主從”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。