Script of mysqldump didn't work correct invoked by launchctl in OS X
Your shell script is missing the full path to mysqldump (assuming you've installed MySQL Community Edition by Oracle):

/usr/local/mysql/bin/mysqldump -u $dbUsername --all-databases | gzip &gt; ${dbBackup}/${date}.sql.gz 2&gt;&amp;1


If you need a password define it in the shell script:

dbPassword="my_dbuser_password"


and change the above line to:

/usr/local/mysql/bin/mysqldump -u $dbUsername -p$dbPassword --all-databases | gzip &gt; ${dbBackup}/${date}.sql.gz 2&gt;&amp;1


There is no space between -p and $dbP...!

I also advice to move the shell script to another path (e.g. /usr/local/bin/). You have to adjust your plist then and the line

    &lt;string&gt;/bin/mysqldump.sh&lt;/string&gt;


becomes:

    &lt;string&gt;/usr/local/bin/mysqldump.sh&lt;/string&gt;