3 # mkmysqlslave -- import MySQL master data and start slave
4 # Copyright (c)2015 Alexander Barton <alex@barton.de>
16 echo "$NAME [<options> ...] <file>"
18 echo " --host|-h <host>"
19 echo " MySQL server hostname [\"$MYHOST\"]."
20 echo " --user|-u <user>"
21 echo " MySQL server user [\"$MYUSER\"]."
22 echo " --password|-p <password>"
23 echo " MySQL server password [\"$MYPW\"]".
26 echo " Path and name of SQL dump file."
35 while [ $# -gt 0 ]; do
63 if [ -z "$INFILE" -o ! -n "$INFILE" ]; then
66 if [ ! -r "$INFILE" ]; then
67 echo "$NAME: Can't read \"$INFILE\"!"
71 echo "Initializing MySQL server on \"$MYHOST\" (user \"$MYUSER\") as replication slave:"
73 [ -n "$MYPW" ] && PWSWITCH="--password='$MYPW'" || PWSWITCH=""
75 echo "Stopping running slave threads ..."
76 mysql -h "$MYHOST" -u "$MYUSER" $PWSWITCH -e 'stop slave'; r=$?
78 echo "Warning: FAILED to stop MySQL slave threads, code $r!" >&2
81 echo "Importing \"$INFILE\" ..."
83 mysql -h "$MYHOST" -u "$MYUSER" $PWSWITCH <"$INFILE"; r=$?
86 echo "MySQL import FAILED, code $r!" >&2
90 echo "Starting slave threads ..."
91 mysql -h "$MYHOST" -u "$MYUSER" $PWSWITCH -e 'start slave'; r=$?
93 echo "FAILED to start MySQL slave threads, code $r!" >&2
97 echo "MySQL slave initialized."