Share a MySQL master-slave data reconstruction script
Attention:
1. This script requires SSH key authentication to the server.
2. Multiple slave required "," connection
3.DBUSER requires master database export and slave database import and stop/start slave permissions
How to use:
mysql-replicate-rebuild.sh [Master-ip/master-host] [Slave-ip/slave-host,slave-ip/slave-host,...] [Dbuser] [Dbpassword]
#!/bin/bashmaster=$1slave=$ (echo $2|sed ' s:,: :g ') dbuser=$3dbpassword=$4 databases=$ (SSH ${MASTER} "mysql -u${dbuser} -p${dbpassword} -e ' Show master status \G; ' | grep -op ' (? <=binlog_do_db:). + ' |sed ' s:,: : ' ") ssh ${master} " mysqldump - u${dbuser} -p${dbpassword} --master-data=1 --databases ${databases} >/tmp/ Replicate.data "rsync -avc ${master}:/tmp/replicate.data /tmp/ssh ${master} " rm -rf /tmp/replicate.data "sed -i ' 1i stop slave; ' /tmp/replicate.dataecho "start slave;" >>/tmp/replicate.datafor i in $SLAVEdo (rsync -avc /tmp/replicate.data ${i}:/tmp/replicate.datassh ${i} "mysql -u${dbuser} -p${dbpassword} </tmp/ Replicate.data && rm -rf /tmp/replicate.data "echo " ${i} replicate finish! ") &donewaitrm -rf /tmp/replicate.data
This article is from the "Yahsei" blog, make sure to keep this source http://yahsei.blog.51cto.com/1584302/1897751
MySQL data synchronization reconstruction of the script