You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#!/bin/bash
export DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" CONFIG_FILE=$DIR/_config.sh [[ ! -r "${CONFIG_FILE}" ]] && { echo "Could not read ${CONFIG_FILE}!"; exit 1; } set -a . "${CONFIG_FILE}" set +a
REMOTE_SQL=
for i in ${databases[@]} do REMOTE_SQL=$REMOTE_SQL' USE '$i'; FLUSH TABLES WITH READ LOCK;' done
REMOTE_SQL=$REMOTE_SQL' system ./_activate-slave.sh;'
REMOTE_SQL=$REMOTE_SQL' system ./_dump.sh;'
for i in ${databases[@]} do REMOTE_SQL=$REMOTE_SQL' USE '$i'; UNLOCK TABLES;' done
echo "Start execution all commands on remote server" > $log_file
mysql --defaults-extra-file=./.remote.my.cnf -e "$REMOTE_SQL"
mysql --defaults-extra-file=./.my.cnf -e "START SLAVE;"
if [ "$1" -eq "master-to-master" ]; then LOCAL_SQL=
for i in ${databases[@]} do LOCAL_SQL=LOCAL_SQL' USE '$i'; FLUSH TABLES WITH READ LOCK;' done
LOCAL_SQL=LOCAL_SQL' system ./_activate-master-to-master.sh;'
for i in ${databases[@]} do LOCAL_SQL=LOCAL_SQL' USE '$i'; UNLOCK TABLES;' done fi
|