mysqldump to a tar.gz
mysqldump --opt <database> | gzip -c | ssh user@wherever 'cat > /tmp/yourfile.sql.gz'
You can't use tar in a pipe like this, and you don't need it anyway, as you're only outputting a single file. tar is only useful if you have multiple files.
If you are running this locally just use the following command to backup your database & zip it using gzip:
mysqldump -u userName -p (passwordPrompt) yourDatabaseName | gzip -c > output.gz
(Edit: fixed -c key)