Зависит от Вашей оболочки. Вы используете Microsoft Windows или Linux? При использовании Linux/BASH затем, вероятно, что $$ интерпретируется как идентификатор текущего процесса. Вы попытались поместить обратную косую черту перед каждым знаком доллара? например.
mysqldump \
-hlocalhost \
-uUSERNAME \
-pPA\$\$W0RD \
DATABASE \
| gzip -c \
> /home/USERNAME/backups-mysql/BACKUP.gz
Обратите внимание, что gzip, вероятно, требует "-c" опции, если Вы хотите сжаться до STDOUT.