#!/bin/sh

MYSQLCLIENT='mysql';
MYSQLDUMP='mysqldump';
CHMOD=`whereis -b chmod  | cut -d" " -f2`;
MYSQLUSER='root';
MYSQLFILE='sql';
SSH=`whereis -b ssh  | cut -d" " -f2`' -o BatchMode=yes';
SSHKEY='/root/rsnapshot/ssh-key';
SSHUSER='rsnapshot';

for REMOTEHOST in $*; do
	if [ "$REMOTEHOST" = "localhost" ]
		then
			for db in $($MYSQLCLIENT -u $MYSQLUSER -B -N -e "show databases"); do
				file='mysql.'$db'.'$MYSQLFILE;
				$MYSQLDUMP -u $MYSQLUSER --opt --databases $db > $file;
				$CHMOD 400 $file;
				echo 'Database dump '$file;
				echo 'Number of files transferred: 1';
				size=`ls -l $file | cut -d' ' -f5`;
				echo 'Total file size: '$size' bytes';
				echo 'Total transferred file size: '$size' bytes';

			done
		else
			for db in $($SSH -i $SSHKEY $SSHUSER@$REMOTEHOST "$MYSQLCLIENT -u $MYSQLUSER -B -N -e \"show databases\
""); do
				file='mysql.'$db'.'$MYSQLFILE;
				$SSH -i $SSHKEY $SSHUSER@$REMOTEHOST "$MYSQLDUMP -u $MYSQLUSER --opt --databases $db" > $file;
				$CHMOD 400 $file;
				echo 'Database dump '$REMOTEHOST':'$file;
				echo 'Number of files transferred: 1';
				size=`ls -l $file | cut -d' '  -f5`;
				echo 'Total file size: '$size' bytes';
				echo 'Total transferred file size: '$size' bytes';
			done
	fi
done
