最近需要把一个老系统升级到新系统,主要是硬件更新。
在新硬件这边搭建了一主两从的环境,数据主要是开发人员导入到新系统,因为导入数据过程中并发量太大,写入太密集,需要先把从停掉,数据导入、核对完成后,重新搭建主从环境。
主从是环境的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';
- 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;
- 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的时候,数据同步已经完成了。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20893244/viewspace-2148249/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/20893244/viewspace-2148249/